Как в Linux запустить пользовательское управление Django с помощью crontab?
Я создал bash-скрипт, который активирует virtaulenv и запускает мою пользовательскую команду управления в Django. Я хочу запускать bash-скрипт каждый день в полночь.
Bash Script :
cd ~
cd path_to_virtualenv/
source virtualenv_name/bin/activate
cd path_to_project/
python manage.py custom_command
deactivate
Когда я запускаю этот скрипт с помощью .
или source
, он работает отлично. Я настроил crontab для запуска этого bash-скрипта (Для тестирования я установил время выполнения в минуту). Но я не получаю желаемого результата.
crontab -e
*/1 * * * * source /path_to_bash_script/bash_script_filename
- Добавьте shebang к вашему сценарию оболочки (т.е.:
#!/bin/bash
, ...) - Удалите
source
из кронтаба - добавьте
extension
в ваш файл скрипта.
Я изменил сценарий следующим образом :
#!/bin/bash
source /path_to_virutalenv/bin/activate
python /path_to_project/manage.py custom_command
В crontab :
*/1 * * * * bash /path_to_bash_script/script.sh