centos 添加定时任务
1. 查看当前用户的定时任务
crontab -l
如果想编辑:
crontab -e
2. 创建任务脚本
创建脚本文件,比如:/www/corn/myjob 文件内容如下:
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
sudo -u root bash -c '#!/bin/bash
# 进入你的Django项目目录
cd /www/wwwroot/projectpath
# 激活虚拟环境(如果你使用了虚拟环境)
#source ~/webenv/bin/activate
# 运行Django管理命令,替换your_command为你需要执行的命令
/root/webenv/bin/python manage.py sys_routine'
echo "----------------------------------------------------------------------------"
endDate=`date +"%Y-%m-%d %H:%M:%S"`
echo "★[$endDate] Successful"
echo "----------------------------------------------------------------------------"
修改定时任务
每5分钟允许一次
*/5 * * * * /www/corn/myjob >> /www/corn/myjob .log 2>&1
crontab的命令构成为 时间+动作,其时间有分、时、日、月、周 五种,操作符有
* 取值范围内的所有数字
/ 每过多少个数字
- 从X到Z
,散列数字
实例
实例1:每1分钟执行一次myCommand
* * * * * myCommand
实例2:每小时的第3和第15分钟执行
3,15 * * * * myCommand
实例3:在上午8点到11点的第3和第15分钟执行
3,15 8-11 * * * myCommand
实例4:每隔两天的上午8点到11点的第3和第15分钟执行
3,15 8-11 */2 * * myCommand
实例5:每周一上午8点到11点的第3和第15分钟执行
3,15 8-11 * * 1 myCommand
实例6:每晚的21:30重启smb
30 21 * * * /etc/init.d/smb restart
实例7:每月1、10、22日的4 : 45重启smb
45 4 1,10,22 * * /etc/init.d/smb restart
实例8:每周六、周日的1 : 10重启smb
10 1 * * 6,0 /etc/init.d/smb restart
实例9:每天18 : 00至23 : 00之间每隔30分钟重启smb
0,30 18-23 * * * /etc/init.d/smb restart
实例10:每星期六的晚上11 : 00 pm重启smb
0 23 * * 6 /etc/init.d/smb restart
实例11:每一小时重启smb
0 */1 * * * /etc/init.d/smb restart
实例12:晚上11点到早上7点之间,每隔一小时重启smb
0 23-7/1 * * * /etc/init.d/smb restart
定时备份数据库
1 写一个备份数据库的脚本 backup_db.sh:
#!/bin/bash
# 数据库备份脚本
DB_NAME="your_database_name" # 替换为你的数据库名
DB_USER="your_database_user" # 替换为你的数据库用户名
DB_PASS="your_database_password" # 替换为你的数据库密码
BACKUP_DIR="/www/backup/database" # 备份目录,请根据实际情况修改
DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_FILE="$BACKUP_DIR/${DB_NAME}_${DATE}.sql"
# 创建备份目录
mkdir -p $BACKUP_DIR
# 执行备份
/usr/bin/mysqldump -u$DB_USER -p$DB_PASS $DB_NAME > $BACKUP_FILE
echo "数据库 $DB_NAME 备份完成,文件保存在: $BACKUP_FILE"
2 给脚本允许权限
chmod +x backup_db.sh
3 添加到定时任务
输入crontab -e 编辑定时任务
添加 每晚1:30 运行脚本并把运行结果保存到/root/backup_tkqd.log文件
30 1 * * * root /root/backup_tkqd.sh >> /root/backup_tkqd.log 2>&1
文档信息
版权声明:可自由转载(请注明转载出处)-非商用-非衍生
发表时间:2025年8月9日 11:34