crontab:为什么不执行脚本

crontab:为什么不执行脚本

所以过去我只是做了一个简单的关闭crontab,仅此而已。最近,我想做一些更复杂的事情,所以我试图让它运行一个脚本。现在我已将其归结为一个超级测试脚本,称为 test.sh。该脚本只是将某些内容回显到控制台和文件。

然而,无论我尝试多少次,似乎都没有效果。这是脚本:

#!/bin/bash

echo "Console foo!!!"
echo "Foo!!!" > ~/foo22.txt

这是我的 crontab:

08 18 * * * /home/craig/Documents/Scripts/test.sh

我已经两次三次检查了文件的路径,这很好。该脚本是可执行的,我可以从终端手动运行它并执行。

我正在根 crontab 中执行此操作,即“sudo crontab -e”,如果这有帮助的话。

答案1

应用程序的运行cron没有“控制台”。两个都标准输出标准错误作业完成时将被捕获并通过电子邮件发送到本地用户帐户。

在您的情况下,脚本以 root 身份运行,因此结果将在 root 的电子邮件中。至于写入文件,~代表 root 用户的主目录,即/root,因此您需要在其中查找输出文件。

相关内容