Linux添加crontab(指定用户)
- root用户登录
- 执行命令 crontab -u 用户名 -e (进入编辑模式)
- 编辑定时任务,如下:
crontab语法介绍
每月每天每小时的第 0 分钟执行一次 /bin/ls :
0 * * * * /bin/ls
在 12 月内, 每天的早上 6 点到 12 点中,每隔 20 分钟执行一次 /usr/bin/backup :
*/20 6-12 * 12 * /usr/bin/backup
周一到周五每天下午 5:00 寄一封信给 alex_mail_name :
0 17 * * 1-5 mail -s “hi” alex_mail_name < /tmp/maildata
每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分…执行 echo “haha”
20 0-23/2 * * * echo “haha”
晚上11点到早上8点之间每两个小时,早上8点
0 23-7/2,8 * * * date - 保存 :wq
- 查看定时任务
root用户执行命令,crontab -l -u 用户名
可以看到添加的定时任务
2024.4.23 发现一个问题:
Oracle数据库备份脚本直接执行没问题,但是定时任务执行了,但是并没有执行成功,脚本中执行expdp,查了下需要在脚本第二行中加上
. /etc/profile
. ~/.bash_profile
加载环境变量,怀疑是因为这些命令在脚本里不能直接执行!