bash脚本捕获平均每60秒的负载,持续2小时
我想制作一个脚本,每60秒运行一次下面的命令,持续2小时。 还希望在每次运行到文件中时将输出保存到新行bash脚本捕获平均每60秒的负载,持续2小时,bash,unix,load,capture,Bash,Unix,Load,Capture,我想制作一个脚本,每60秒运行一次下面的命令,持续2小时。 还希望在每次运行到文件中时将输出保存到新行 uptime | awk '{print $12}' | cut -d "," -f 1 任何帮助都将不胜感激。我有点生疏了。一个简单的for循环应该适合你 for i in {1..120} do uptime | awk '{print $12}' | cut -d "," -f 1 >> /tmp/outputfile echo "number of times
uptime | awk '{print $12}' | cut -d "," -f 1
任何帮助都将不胜感激。我有点生疏了。一个简单的for循环应该适合你
for i in {1..120}
do
uptime | awk '{print $12}' | cut -d "," -f 1 >> /tmp/outputfile
echo "number of times through: ${i}"
sleep 60
done
使用
at
或crontab
然后在代码末尾添加/path/to/log.file
。不幸的是,如果服务器联机不到一天,awk'{print$12}'就不能正常工作,因为格式不同<代码>15:51:58最多8天,7:33,1个用户,平均负载:9.50,8.32,8.50vs15:51:58最多23:45,1个用户,平均负载:0.01,0.15,1.45
在正常运行时间命令中有“x天”。我只是想在这里发表评论,因为这是谷歌的一个顶级结果,不希望其他人犯同样的错误。你可以使用cat/proc/loadavg
,而不是延长正常运行时间来获得更可靠的结果。