如果我希望它们在/etc/cron.hourly中自动运行,我总是在lunux中编写shell脚本。我有以下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")
如果可能的话,一旦安装此版本而不是默认的python 2,我如何确保cron.hourly正在使用python3.6?
答案 0 :(得分:0)
创建一个新的Shell脚本并将其放置在/etc/cron.hourly
文件夹中。
Shell脚本应如下所示。
#!/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