at只能执行一次
at 选项 时间
[root@localhost sh]# at now + 2minutes at> /sh/hello.sh >>/tmp/hello.log at> <EOT> job 1 at Wed Jan 5 08:46:00 2022 [root@localhost sh]# date Wed Jan 5 08:45:46 PST 2022 [root@localhost sh]# atq 1 Wed Jan 5 08:46:00 2022 a root [root@localhost sh]# at -c 1
上面的配置表示2min之后执行并保存结果在/tmp/hello.log
其他命令:
at -c 工作号:查询指定定时任务
atrm 工作号:删除指定定时任务
…
at不常用,不再做解释
crontab命令:
-e:编辑定时任务
-l:列出定时任务列表
编辑格式:
、 * * * * * 执行的任务
项目 | 含义 | 范围 |
---|---|---|
第一个* | 一小时当中的第几分钟 | 0-59 |
第二个* | 一天当中的第几个小时 | 0-23 |
第三个* | 一个月当中的第几天 | 1-31 |
第四个* | 一年当当中的第几月 | 1-12 |
第五个* | 一周当中的星期几 | 0-7(0和7都代表星期天) |
一些特殊符号:
特殊符号 | 含义 |
---|---|
* | 代表任何时间,比如第一个*就代表一小时中,每分钟都执行一次 |
, | 代表不连续时间。比如:“0 8,10,12,18 * * *命令”, 它代表在每天的8点、10点、12点、18点的0分都执行一次 |
- | 代表连续时间,比如"10 10 * * 1-6"命令,代表在周一到周六的10点10分执行命令 |
*/n | 代表每隔多久执行一次。比如"*/10 * * * * 命令",代表每隔10分钟执行一次命令 |
举例:
10 * * * * 命令:在每个小时的第十分钟执行
1 SHELL=/bin/bash 2 PATH=/sbin:/bin:/usr/sbin:/usr/bin 3 MAILTO=root 4 5 # For details see man 4 crontabs 6 7 # Example of job definition: 8 # .---------------- minute (0 - 59) 9 # | .------------- hour (0 - 23) 10 # | | .---------- day of month (1 - 31) 11 # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... 12 # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat 13 # | | | | | 14 # * * * * * user-name command to be executed 15 * * * * * root run-parts /sh/>>/tmp/123.txt
记住咯: