从 bash 脚本作为 cronjob 启动 bash 脚本

Start bash script from bash script as cronjob

我正在尝试从作为 cronjob(startTest.sh) 在 Ubuntu 14.04。 Cron 是 运行,如果从命令行调用,两个脚本都能完美运行。

startTest.sh 看起来像这样:

#!bin/bash
SHELL=/bin/bash
PATH=/usr/local/bin:/usr/local/sbin:/sbin:/usr/sbin:/bin:/usr/bin:/home/username/path/to/script

bash /home/username/path/to/script/test.sh

test.sh 看起来像这样:

#!/bin/bash

touch it_works.txt

我的 crontab 条目如下所示

* * * * * /usr/local/bin/startTest.sh

最佳做法通常是不要在脚本 运行 中使用相对路径(除非您明确 cd)作为 cron 作业。

crond 可能不是 运行ning 从您期望的任何目录。根据此 cron 作业 运行 的用户身份,脚本要么没有在 crond 的当前工作目录中创建 it_works.txt 的权限,要么正在创建文件,而您找错地方了。