我有一个名为start.sh的bash脚本,通过Ubuntu服务器上的CRON JOB运行。
start.sh包含下面的代码行:
/home/ubuntu/folder1/folder2/start.sh
是start.sh的路径。
#!/bin/bash
crawlers(){
nohup scrapy crawl first &
nohup scrapy crawl 2nd &
wait $!
nohup scrapy crawl 3rd &
nohup scrapy crawl 4th &
wait
}
cd /home/ubuntu/folder1/folder2/
PATH=$PATH:/usr/local/bin
export PATH
python init.py &
wait $!
crawlers
python final.py
我的问题是,如果我在命令行上自己运行 start.sh,它会在 nohup.out 文件中输出。
但是当它通过 cronjob 执行这个 bash 文件 时(尽管脚本运行正常),它不会产生 nohup.out。
我该如何将这个 cronjob 的 输出 写入 nohup.out?
python init.py & wait $!
(分布在两行上)是无意义的;去掉&
并删除wait
。它不是您问题的因素;它也可以按原样工作。但这是无意义的。 - Jonathan Leffler