使用cron定时执行失败!
计划每5分钟使用top -n 1命令一次,并使用awk保存到不同文件,以便统计cpu、内存和交换空间的使用情况。脚本如下:#! /bin/sh
top -n1|awk '{if (NR==3) print >>"/tmp/cpu_state"}'
使用crontab -e设定如下:
*/5 * * * * /tmp/tongji.sh
发现在/tmp下根本没有cpu_state文件,但在shell下tongji.sh可以正常执行,输出结果也很正确。请教大家 ,这是什么原因? crontab 和shell执行的环境不一样,你可以去mail查看邮件,里面会有crontab执行的结果,top命令有点特殊,你的脚本可以改为
#!/bin/sh
top -bcn1|/bin/awk '{if (NR==3) print >>"/tmp/cpu_state"}'就可以运行 感谢,增加-b后,可以正常执行!真是另人印象深刻啊! 纸上得来终觉浅,绝知此事要躬行 估计是环境变量的问题。 很强大,表示以前对这个参数还是未知的状态,
页:
[1]