Как я могу выполнить скрипт Python в /etc/cron.hourly? - PullRequest
1 голос
/ 08 мая 2019

Я всегда пишу сценарии оболочки в lunux, если я хочу, чтобы они запускались автоматически в /etc/cron.hourly. У меня есть следующий скрипт Python (разработанный для Python 3.6, но версия Python по умолчанию на моем сервере - 2), который я хотел бы выполнить в /etc/cron.hourly, а не crontab. Как мне этого добиться?

"Perform automated database backups using xtrabackup"

import os

location='/opt/mysql/backups/daily'
with open('/authentication/account.txt') as f:
    mylist = f.read().splitlines()

username = mylist[0]
password = mylist[1]
hostname = mylist[2]

os.system(f"innobackupex --user={username} --password={password} -- 
host=localhost {location} >/dev/null 2>&1")

# Delete backup folders older than 3 days
os.system(f"find {location} -type d -ctime +7 | xargs rm -rf")

Если это возможно, как я могу убедиться, что cron.hourly использует python3.6 после установки этой версии вместо Python 2 по умолчанию?

1 Ответ

0 голосов
/ 08 мая 2019

Создайте новый сценарий оболочки и поместите его в папку /etc/cron.hourly.

Сценарий оболочки должен выглядеть следующим образом.

#!/bin/bash

python3.6 complete_path_of_your_script.py

Команда python3.6 гарантирует, что ваш скрипт работает с версией 3.6 (если python 3.6 уже установлен на вашем сервере)

Для справки - https://askubuntu.com/questions/7676/function-of-etc-cron-hourly

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...