我也有完全一样的问题 :https://askubuntu.com/a/117989/1012849
我不明白如何指定 SHELL=/bin/sh 的路径,因为我无法从以下位置移动我的脚本:
/home/ubuntu/folder/monitoring.sh
我必须在脚本或 crontab 上指定路径吗?我如何检索路径?
这是我的 crontab 的内容:
*/1 7-19 * * * /home/ubuntu/folder/monitoring.sh
surveillance.sh的内容
#!/bin/bash
touch testcronsh.txt
python monitoring.py
实际上,当我尝试通过 crontab 执行脚本时出现了以下错误:
/bin/sh: 1: root: not found
答案1
好的,我找到了解决方案。
首先要知道我是 Linux 环境的初学者。
因此我创建了一个带有 chmod 770 的 surveillance.sh 脚本。此文件调用另一个带有 chmod 770 的名为 surveillance.py 的文件。
然后我在我的 crontab 上添加了 surveillance.sh。
我不知道 crontab 用户不一样
所以我的 python 脚本对我的 .sh 脚本的调用必须有完整路径
监控文件
#!/bin/bash
touch testcronsh.txt
python /home/ubuntu/folder/monitoring.py