Подтвердить что ты не робот

Как запустить файл python с помощью заданий cron

Привет, я создал файл python, например, как file_example.py

Файл выводит значение sensex

Предположим, что путь к файлу в системе linux равен /Desktop/downloads/file_example.py

и я обычно запускаю файл как python file_example.py

Но я хочу установить задание cron для запуска файла python каждые 2 минуты, который находится по указанному выше пути.

Может кто-нибудь, пожалуйста, дайте мне знать, как это сделать.

Отредактированный код:

Я редактировал код и создал bash script с именем test.sh, как указано ниже

#!/bin/bash 
cd /Desktop/downloads/file_example.py
python file_example.py 2>log.txt 

Когда я запускаю указанный выше файл, отображается следующая ошибка:

sh-4.2$ python test.sh
  File "test.sh", line 3
    python test.py 2>log.txt 
              ^
SyntaxError: invalid syntax
4b9b3361

Ответ 1

Предполагая, что вы используете ОС unix, вы должны сделать следующее.

отредактируйте файл crontab с помощью команды

crontab -e

добавьте строку, которая похожа на приведенную ниже

*/2 * * * * /Desktop/downloads/file_example.py

это может использоваться для запуска других скриптов, просто используйте путь к script, необходимый i.e.

*/2 * * * * /path/to/script/to/run.sh

Ниже приводится объяснение времени (добавьте звездочку и косую черту перед номером, чтобы запускать каждый n временных меток, в этом случае каждые 2 минуты)

* * * * * command to be executed
- - - - -
| | | | |
| | | | ----- Day of week (0 - 7) (Sunday=0 or 7)
| | | ------- Month (1 - 12)
| | --------- Day of month (1 - 31)
| ----------- Hour (0 - 23)
------------- Minute (0 - 59)

Ответ 2

Вы можете использовать модуль python-crontab.

https://pypi.python.org/pypi/python-crontab

Чтобы создать новое задание cron так же просто:

from crontab import CronTab
#init cron
cron   = CronTab()

#add new cron job
job  = cron.new(command='/usr/bin/echo')

#job settings
job.hour.every(4)