unix - 存储数学表达式的输出
问题描述
我是 SunOS unix 系统的新手。我想存储正常运行时间并将其转换为 shell 脚本中的分钟数。以下是我在脚本中使用的内容。
hrs=`uptime | awk '{print \$5}' | sed 's/[:,]/ /g' | awk '{print \$1}'`
mins=`uptime | awk '{print \$5}' | sed 's/[:,]/ /g' | awk '{print \$2}'`
uptimesecs=$(($mins*60)))
并错误我在脚本中得到的内容。
谁能帮我语法
解决方案
您$
在脚本中过度引用了 s awk
:
hrs=`uptime | awk '{print $5}' | sed 's/[:,]/ /g' | awk '{print $1}'`
mins=`uptime | awk '{print $5}' | sed 's/[:,]/ /g' | awk '{print $2}'`
你做的工作也比必要的多。获得正常运行时间一次:
uptime=$(uptime | awk '{print $5}')
:
然后使用外壳本身拆分 a 上的值。
IFS=: read hrs min <<< "$uptime"
推荐阅读
- r - 如何制作具有多于一列的数据透视表
- c# - 数据集中的 LinqToSql 查询
- python - 使由 python 脚本生成的 csv 文件可供下载
- css - 类似于网格自动流密集的无序列表
- javascript - 异步播种 mongo 数据库
- prometheus - 为什么在 Prometheus 中使用 irate 或 rate 计算 CPU 利用率?
- node.js - Passportjs Google OAuth20 在数字海洋上部署时不起作用
- azure - ADAL python 对登录用户的 windows 支持
- discrete-mathematics - 如何证明这个集合等价
- python - 'function' 对象没有属性 'apply'