crontab 运行 一个带参数的 python 脚本

Crontab running a python script with parameters

我想弄清楚为什么我的 crontab 没有 运行 宁我的 python 脚本,我怀疑这是由于我的参数:

这是它的样子:

0       3       * * *   root    /usr/bin/python && /usr/bin/python -q /root/tools/script.py parm1 parm2 2>&1 >>/var/log/python-tools.log

所以基本上我可以 运行 在终端中这样做:

$ python script.py parm1 parm2

但是当我尝试在 crontab 中使用上面的行时它不起作用

首先,这个脚本必须 运行 来自 root 吗?这通常是个坏主意。

其次使用&&,这意味着只有当前面的命令成功退出时,它才会运行后面的命令,因为在第一个命令中你只是运行宁python 而且它实际上并没有做任何你不太可能通过成功代码退出的事情。

-qpython 的无效参数。而且你不应该在它之前有 /usr/bin/python &&

0 3 * * * root /usr/bin/python /root/tools/script.py parm1 parm2 2>&1 >>/var/log/python-tools.log