我不是根,
我在crontab中输入了以下命令:
*/1 * * * * /home/ajain/testscript.sh
文件testscript.sh包含以下命令:
#!/bin/bash
echo "The script begins now"
ping -c 2 live.com
echo The script has been run on `date` >> /home/ajain/testscript.log
echo "The script ends now"
exit
crontab没有给出结果,但是,下面的命令在testscript.log文件中正确地给出了结果,显示了ping日期。
bash testscript.sh
为什么crontab不工作?
最佳答案
你可以用两种不同的方法来修复它。
要提供脚本/home/ajain/testscript.sh的完整路径,这里甚至不需要添加bash
,因为您已经清楚地提到了shell
脚本应该运行在哪一行,即脚本的第一行#!/bin/bash
在执行脚本之前添加这一行
set path=$path:/home/ajain/
testscript.sh # no need to use bash in front of it
同时,向脚本提供执行权限还不够。您需要检查要执行脚本的用户是否有权访问脚本的位置。这意味着用户是否可以执行
cd /home/ajain/
操作。希望这对你有帮助。