首页 > 解决方案 > 存储数学表达式的输出

问题描述

我是 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)))

并错误我在脚本中得到的内容。

在此处输入图像描述

谁能帮我语法

标签: unixawkshsunos

解决方案


$在脚本中过度引用了 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"

推荐阅读