目录
@(计划任务命令)
at命令
at命令用于指定在未来某一时间执行一个任务,该任务只能被执行一次
at [选项] [时间]
- f:指定包含具体指令的任务文件
- q:指定新任务队列名称
- l:显示待执行任务的列表
- d:删除指定的待执行任务
-
m:任务执行完成后向用户发送E-mail
可以指定时间如:格式如:hh:mm(小时:分钟)
也可以指定:noon、teatime、midnight、这样模糊的时间
也可以指定年月日,指定格式为:month day(月、日) mm/dd/yy(月、日、年)、dd.mm.yy(日、月、年)
计划设定完成后,可以用atq命令来查看系统没有执行的工作任务
可以用atrm删除任务,比如:crontab命令
cron是一个linux下的定时执行工具,可以使系统周期性地执行某项任务。cron的配置文件是/etc/crontab,首先查看/etc/crontab文件的内容:
前三行有关cron任务运行时的环境配置: - shell变量的值只当系统使用的SHELL环境
- PATH变量定义了执行命令的路径。
cron的的输出以电子邮件的形式发送给MAILTO变量定义的用户名
后边五个*号代表了不同的时间
* | * | * | * | * | 命令 |
---|---|---|---|---|---|
0~59(分钟) | 0~23(小时) | 1~31(日) | 1~12(月) | 0~7星期 | 需要执行的命令 |
cron作业通过crontab命令实现,可以使用crontab -e命令将作业任务直接保存在用户的作业列表文件/var/spool/cron/username里
,也可以先用VI编辑器将人物列表保存在某一个文件里面然后用:
crontab 文件名
执行该文件列表
文件格式与上一个表格一样
前五行中:
- *表示所有符合规则的值
- 1-4表示4个整数1,2,3,4
- ,隔开一系列值指定一个列表例如:1,6,3,7
- /可以定义间隔频率,列入0-59/2就代表每两分钟,也可以用*/2如果在月中就表示每两个月运行一次后面的命令
例子: - 每天早上8点到下午18点每6个小时将在线用户列表保存到userlist文件中
- 周一到周五每天早上六点将文件列表保存在filelist中
- 每天早上7:30开启ssh服务,晚上23:30关闭ssh服务
- 每天晚上删除临时文件
- 每年1月1号8:00发新年快乐
crontab -e
进入cron作业编辑状态
编写以下的格式:
然后还需要启动,用以下方法启动:(需要root权限)
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //关闭重新启动