我有这个用Python编写的脚本,它应该通过Telegram发送“world.zip”文件。
#!/usr/bin/python3
...
bot.chat(chat).send_file(path="/home/marcobuster/Server/world.zip")
如果我使用启动脚本 python3 "Backup.py"
有用。
好。但现在,我想每小时运行一次这个脚本。所以,我更新了crontab列表,我添加了这些东西 (marcobuster是我的用户)
00 * * * * sudo -u marcobuster /usr/bin/python3 /home/marcobuster/Server/Backup.py > /home/marcobuster/Server/crontab_error.txt 2>&1
但脚本不起作用。他给了我这个例外:
Traceback (most recent call last):
...
FileNotFoundError: [Errno 2] No such file or directory: '/home/marcobuster/Server/world.zip'
我重复一遍,通过使用它来启动它可以正常运行 python3 "Backup.py"
。
怎么了?
UPDATE :我试过这样做:
chmod +x Backup.py
./Backup.py
我有同样的错误:
Traceback (most recent call last):
...
FileNotFoundError: [Errno 2] No such file or directory: '/home/marcobuster/Server/world.zip'
为什么不将shebang行设置为#!/ usr / bin / python3并将cron作业运行为/path/to/the/script.py,确保文件为+ x模式。
—
Sirex
这是同一件事。
—
MarcoBuster
另外,你为什么使用sudo?这是root的crontab吗?将它放在用户的crontab中会更容易。
—
Sirex
因为我尝试了一切。
—
MarcoBuster
$ ./Backup.py Traceback (most recent call last): FileNotFoundError: [Errno 2] No such file or directory: '/home/marcobuster/Server/world.zip' $