手动执行脚本,在脚本里面输出变量到文件正常
但是换成 crontab 调度执行,脚本输出到文件的内容会自动省略一些
代码
IN=`echo "$LINE" | tr -s ' '`
PID=`echo $IN | cut -d ' ' -f1 `
CMD="`echo $IN | cut -d ' ' -f12 ` ` echo $IN | cut -d ' ' -f13` ` echo $IN | cut -d ' ' -f14`"
CPU=`echo $IN | cut -d ' ' -f9 `
MEM=`echo $IN | cut -d ' ' -f10 `
echo "${PID}|${CMD}|${CPU}|${MEM}" >> /tmp/push-top-tmp.log
手动执行文件结果:
./push-top.sh
crontab 调度执行的结果:
* * * * * /push-top.sh
在脚本里面加过 source /etc/profile ,无效
在定时任务前加过 source /etc/profile && /push-top.sh ,无效
一模一样的脚本,都是用 root 账户执行,为什么 crontab 执行后面的参数都掉了?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.