Linux定时任务脚本通常使用 cron
服务来执行。cron
是一个守护进程,负责在指定的时间间隔执行预定的命令或脚本。
cron
服务会持续运行,确保定时任务按时执行。原因:
cron
服务未启动。解决方法:
cron
服务状态:cron
服务状态:crontab
中指定的脚本路径是绝对路径。crontab
中指定的脚本路径是绝对路径。cron
执行时使用正确的环境变量:cron
执行时使用正确的环境变量:方法:
cron
执行的日志通常记录在 /var/log/syslog
或 /var/log/cron
中。
sudo tail -f /var/log/syslog
或
sudo tail -f /var/log/cron
假设我们有一个简单的 Python 脚本 backup.py
,用于备份数据库:
#!/usr/bin/env python3
import subprocess
import datetime
def backup_database():
timestamp = datetime.datetime.now().strftime("%Y%m%d%H%M%S")
backup_file = f"/backups/db_backup_{timestamp}.sql"
subprocess.run(["mysqldump", "-u", "username", "-ppassword", "database_name", ">", backup_file], shell=True)
if __name__ == "__main__":
backup_database()
设置 cron
任务:
crontab -e
添加以下内容:
0 2 * * * /usr/bin/python3 /path/to/backup.py
这表示每天凌晨 2 点执行备份脚本。
希望这些信息对你有所帮助!
领取专属 10元无门槛券
手把手带您无忧上云