对应的命令 at、atq、atrm
at:设置一个特定任务,到点就执行,不管系统忙不忙
run a job at 4pm three days from now, you would do
at 4pm + 3 days
run a job at 10:00am on July 31, you would do
at 10am Jul 31
run a job at 1am tomorrow, you would do
at 1am tomorrow
at -c 任务号 ------查看任务的具体信息
at 时间 -f 文件(脚本)
at计划任务文件位置:
/etc/at.deny:只有该名单里面的人不可以使用
/etc/at.allow:只有该名单里面的人可以使用
当两个文件里面都出现了同一个用户名,则at.allow文件生效
示例:
[root@ceshi mnt]# date
2016年 04月 10日 星期日 15:54:32 CST
[root@ceshi mnt]# at "now +3 minutes"
at> /bin/mkdidr /shuangxingjiaoyu
at> <EOT>
job 1 at 2016-04-10 15:57
[root@ceshi lianxi]# ls /var/spool/at --------计划任务的存储位置
spool
atq:查询当前设置的at任务列表
batch命令格式与at命令相同,但不同的是,它会先检测系统忙不忙,不忙的时候运行,向atd提交作业
/etc/init.d/crond服务-------周期计划
对应的命令 crontab
任务的设置文件:/var/spool/cron/用户名
日志的设置文件:/var/log/cron
服务的配置文件: /etc/crontab ---------------系统任务
子配置服务文件:/etc/cron.d
/etc/crontab文件的格式:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * user-name command to be executed
建议用绝对路径
编辑计划任务:crontab -e [-u 用户名]
查看计划任务:crontab -l [-u 用户名]
删除计划任务:crontab -r [-u 用户名]
crond服务的缺点:当系统关机时,计划任务并不能执行
anacron服务:弥补crond服务的缺点,对系统任务的辅助(/etc/crontab)
如何查看计划任务是否按时执行?
[root@ceshi cron]# cat /var/spool/anacron/cron.daily
20160410
anacron服务配置文件:/etc/anacrontab
时间标签文件:/var/spool/anacron/*
anacron -fu /var/spool/anacron/* 强制做一遍计划任务,*代表任务名
[root@ceshi mnt]# chkconfig --list atd --查看atd服务在各个界面下的运行状态
atd 0:关闭 1:关闭 2:关闭 3:启用 4:启用 5:启用 6:关闭
date命令-------具体关注时间的显示格式(%F..........)
更改当前系统时间
[root@ceshi mnt]# date -s "2016-4-10"
2016年 04月 10日 星期日 00:00:00 CST
[root@ceshi mnt]# date -s "15:37:00"
2016年 04月 10日 星期日 15:37:00 CST
[root@ceshi mnt]# hwclock -w --------下次启动时生效
或者启用网络时间
[root@ceshi mnt]# ntpdate 210.72.145.44
10 Apr 15:36:09 ntpdate[2008]: the NTP socket is in use, exiting
run-parts:批量执行脚本,后面接文件夹