我需要编写一个脚本来显示总交换大小,使用的交换大小和使用的百分比。
以下是我正在使用的命令。
pgsize=`swapon | tail -1 | awk '{print $3}'`
pgused=`swapon | tail -1 | awk '{print $4}'`
pgpercent=$(($pgused * 100/ $pgsize))
命令的输出是 pgsize = 16G pgused = 22M pgpercent - 我在此行中收到以下错误
22M:对于基数来说价值太大了(错误令牌是" 22M")
在这里,我如何将22M转换为22和16G转换为16 * 1024并进行划分。例如。 (22 * 100)/(16 * 1024)
答案 0 :(得分:3)
swapon
有一个--bytes
参数
因此:
swapon --raw --bytes |尾巴-1 | awk' {print $ 4" /" $ 3}' | BC
答案 1 :(得分:3)
打印swapon列出的最后一个交换区域的使用百分比:
swapon --bytes --show=USED,SIZE | awk 'END{print 100*$1/$2}'
将其保存在变量中:
ppgpercent=$(/sbin/swapon --bytes --show=USED,SIZE | awk 'END{print 100*$1/$2}')