linux学习(六)计划任务命令

时间:2021-04-16 14:20:23

目录

@(计划任务命令)

at命令

at命令用于指定在未来某一时间执行一个任务,该任务只能被执行一次

at [选项] [时间]
  • f:指定包含具体指令的任务文件
  • q:指定新任务队列名称
  • l:显示待执行任务的列表
  • d:删除指定的待执行任务
  • m:任务执行完成后向用户发送E-mail
    可以指定时间如:格式如:hh:mm(小时:分钟)linux学习(六)计划任务命令
    也可以指定:noon、teatime、midnight、这样模糊的时间linux学习(六)计划任务命令
    也可以指定年月日,指定格式为:month day(月、日) mm/dd/yy(月、日、年)、dd.mm.yy(日、月、年)
    计划设定完成后,可以用atq命令来查看系统没有执行的工作任务linux学习(六)计划任务命令
    可以用atrm删除任务,比如:
    linux学习(六)计划任务命令

    crontab命令

    cron是一个linux下的定时执行工具,可以使系统周期性地执行某项任务。cron的配置文件是/etc/crontab,首先查看/etc/crontab文件的内容:
    linux学习(六)计划任务命令
    前三行有关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作业编辑状态

编写以下的格式:linux学习(六)计划任务命令
然后还需要启动,用以下方法启动:(需要root权限)

/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //关闭重新启动