Существует два способа создания crontab - для каждого пользователя или глобально. Для глобального crontab (/ etc / crontab) вы указываете пользователя согласно:
# m h dom mon dow user command
17 * * * * root cd / && run-parts --report /etc/cron.hourly
Для пользователей crontabs вы не делаете, согласно:
aj@wherever:~$ crontab -l
0 * * * * /home/aj/bin/update-foobar
Чтобы запустить скрипт Python через #! примечание, вы просто делаете сценарий исполняемым (chmod 755 /root/test.py) и вызываете его напрямую, что-то вроде:
/root/test.py
Если вы не хотите этого делать, вы можете запустить его вручную через интерпретатор python, например:
/usr/bin/python /root/test.py
Это предполагает, что любой пользователь, от имени которого вы работаете (т. Е. Пользователь в / etc / crontab или пользователь, которого вы запускаете crontab -e as), имеет разрешение на просмотр скрипта python - / root может быть недоступен обычному пользователи, например
Вы можете получить хорошее представление о том, выполняется ли ваш скрипт вообще, добавив:
import time
time.sleep(20) # pause for 20 seconds
и затем проверка с помощью "top", "ps aux" или "pstree", чтобы увидеть, действительно ли работает python.