有谁能告诉我为什么我的 crontab 和 shell 脚本无法运行。
我有
chmod +x
我的 shell 脚本并将以下内容添加到crontab -e
*/5 * * * * bash cd /home/jclark/scrips/ipcheck/ && ./ipCheck.sh
然后 ipCheck.sh 执行下列操作:
#!/bin/sh
curl http://api.externalip.net/ip/ -o ipRecord.txt
尽管它看上去并未运行?
答案1
您无法运行这样的 bash 命令。Bash 需要一个文件(shell 脚本)作为其参数。
你可能能够像这样运行所需的命令:
*/5 * * * * bash -c "cd /home/jclark/scrips/ipcheck/ && ./ipCheck.sh"
请注意-c
您要执行的命令周围的引号。
我认为你真正想要的是:
*/5 * * * * /home/jclark/scrips/ipcheck/ipCheck.sh
...并且脚本应该包含:
#!/bin/bash
curl http://api.externalip.net/ip/ -o /home/jclark/scripts/ipcheck/ipRecord.txt