当我使用 root 手动运行脚本时,它工作正常。当我在 cron 中执行相同的脚本时,它没有运行。我检查了 cron 实际上是在调用脚本,但脚本没有执行。我将脚本中的 echo 输出导出到文本文件,但文本文件没有记录任何内容。请检查这个 cron
*/10 * * * * sh /var/www/sym_monitor/restart.sh > /var/www/migrate/root_restart.txt
最佳答案
另一种避免键入完整可执行路径的方法是将 shell 全局变量放在 crontab
的顶部:
SHELL=/bin/sh
PATH=/bin:/usr/bin:/usr/local/bin
MAIL=me@domain.tld
*/10 * * * * stuff > log 2>&1
注意 > log 2>&1
语法在日志文件中记录 STDERR
和 STDOUT
关于linux - crontab 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14873962/