linux crontab调用脚本中的ifconfig命令返回为空
crontab 调用脚本中的ip=`ifconfig eth0 | grep 'inet addr:' | grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'`
返回值为空,手动执行执行能够正确地返回ip地址,crontab调用不可以
把脚本中ifconfig 改成全路径/sbin/ifconfig 问题解决
ip=`/sbin/ifconfig eth0 | grep 'inet addr:' | grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'`
通过其他程序或脚本在非交互式模式下调用top命令,经常会出现:
top: Failed tty get 错误
解决办法:加个-b 选项皆可
-b : Batch mode operation
Starts top in <A1><AF>Batch mode<A1><AF>,which could be useful for sending output from top to other programs or to a file. In this mode,top will not accept input and runs until the iterations limit you<A1><AF>ve set with the <A1><AF>-n<A1><AF> command-line option or until killed.
例如执行:top -bn 1
nohup top -b | grep init >> top.log & (top.log 内容显示的慢)
nohup /usr/bin/top -b | grep init >> top.log & (top.log内容显示的快)
shell脚本错误
错误:shell脚本加入到定时任务中无法正确获取到所需的数据:
需要在shell脚本前面加上
export TERM=linux