我有一个简单的脚本,并要求crontab执行该脚本。 在脚本中,我有两个我想运行的命令,并将输出追加到文件中。 只有其中的一个命令按照它应该做的。 但是,如果我自己以“root”身份运行脚本,则脚本将起作用。 所有的机器,RHEL,Ubuntu服务器/桌面和Fedora都有相同的结果。 以下是我的脚本和crontab -l 。
我一直在研究和尝试一切,甚至设置$PATH ,但没有。 service httpd status将不会运行。
#!/bin/bash #check httpd status and append to file service httpd status >> /path/to/file; #check cupsd status and append to file netstat -punta | grep cupsd >> /path/to/file; exit
crontab的:
*/1 * * * * /usr/local/bin/script.sh
解:
而不是运行“服务httpd状态”运行“/etc/init.d/httpd状态
这工作完美无瑕。 关键是我试图在Ubuntu 14.04.2 LTS中运行这个,我查看了cron日志中的错误,发现了在线错误并replace了上面的代码。