当我手动运行 bash 文件时,它可以工作,但是 crontab 无法运行它?

当我手动运行 bash 文件时,它可以工作,但是 crontab 无法运行它?

这是我的 sh 文件:http://paste.ubuntu.com/5816543/,我用它在每天的特定时间段内下载 youtube 文件。当我将文件(y.sh)拖入终端并按回车键时,它就开始下载。但是当我在 中使用以下命令时crontab -e,什么都没有发生!

00 21 * * * /home/deroot/links4dl/y.sh

Torify:torsocks 或 tsocks 和 tor 的包装器 ->man torify

youtube-dl:从 youtube.com 或其他视频平台下载视频 ->man youtube-dl

答案1

请记住,Cron 使用其自己的环境,这与您自己的环境不同。

如果你没有改变它,在 cron 环境中 $PATH 是/usr/bin:/bin

您可以使用以下命令检查命令的存储位置:

which torify 
which youtube-dl

如果不在/usr/bin:/bin => 在您的脚本中添加最小的 PATH 环境,例如:

export PATH="/bin:/usr/bin:xxxx"

(其中 xxxx 是命令的路径)

相关内容