我有一个cron作业,每晚在我的用户下运行一次。 我使用crontab -e安装了它,并添加了一行:
0 1 * * * /home/username/diskreport.sh
crontab的设置是为了给我发电子邮件的结果。 看起来随机我从Cron守护进程收到一封电子邮件,说明没有find脚本(与diskreport.sh的输出相反)。
/bin/sh: 1: /home/username/diskreport.sh: not found
我在脚本开始时遇到了一个错误,但是这并不妨碍脚本的运行。 它在sh和bash下运行良好:
#~/bin/bash
事实certificate,这与ecryptfs有关,并有一个encryption的主目录。 “看似随机”的行为是由于我的用户login进入了一个活跃的SSH会话而触发的。当logincron时,它已经能够读取我的主目录,因为它已经被挂载和解密了。 注销时脚本不可用。 感谢所有有用的build议。
所有的shell脚本都应该以/ #!/bin/bash行开始(用你正在使用的shellreplacebash
做:
whereis sh
得到最短的path,例如/bin/sh然后将你的crontab作业改为:
0 1 * * * /bin/sh /home/username/diskreport.sh