[英]Start bash script from bash script as cronjob
我正在尝试从第二个bash脚本启动bash脚本(test.sh),该脚本在Ubuntu 14.04上作为cronjob(startTest.sh)运行。 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
最佳实践通常是在作为cron作业运行的脚本中不要使用相对路径(除非您执行显式cd
)。
crond
可能不在预期的任何目录中运行。 根据该cron作业运行的用户身份,脚本可能没有权限在crond
的当前工作目录中创建it_works.txt
,或者该脚本正在创建文件,而您在错误的位置查找。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.