linux计划任务与日志管理
    
     
      一、单次计划任务(at)
     
    
     
      1.1 命令用法
     
    
at [选项] [时间] 
    
     在添加计划任务时,
     
      at
     
     会从标准输入读取任务内容,可以输入多条命令,输入完成后,另起一个空行,按
     
      Ctrl+D
     
     结束输入。输入的命令会被自动转化为脚本。详情请看下面的例子。
    
- 
      请确保
 
 atd
 
 服务已经启用,否则计划任务不能执行。
     
      1.2 常用的时间格式(精确到分钟)
     
    
     
      1.2.1 绝对时间
     
    
<时>:<分>或
<时>:<分> <年>-<月>-<日>例
12:00或
05:20 2017-05-20
     
      1.2.2 相对时间
     
    
<绝对时间> +<偏移量> <偏移单位>
#偏移单位有:minutes, hours, days, weeks例
now +2 hours    #两小时后
23:00 +30 minutes   #23:00 再过 30 分钟
     
      1.3 举例
     
    
添加计划任务
[root: ~]# at 08:24
at> sleep 5    
at> <EOT>   #输入完成后另起一个空行,然后输入 Ctrl+D
job 3 at Tue May 16 08:24:00 2017
#计划任务被指定为 3 号查看计划任务
列出所有的计划任务
[root: ~]# at -l
3   Tue May 16 08:24:00 2017 a root查看指定序号计划任务的脚本内容
[root: ~]# at -c 3
#!/bin/sh
# atrun uid=0 gid=0
# mail root 0
umask 22
... #省略多行
cd /root || {
     echo 'Execution directory inaccessible' >&2
     exit 1
}
${SHELL:-/bin/sh} << 'marcinDELIMITER38168611'
sleep 5
marcinDELIMITER38168611
#真正的任务内容在最后面删除计划任务
[root: ~]# at -d 3确认是否删除成功
[root: ~]# at -c 3
Cannot find jobid 3 #不能找到相应编号的计划任务说明成功了
     
      二、循环任务crond
     
    
linux 系统则是由 cron (crond) 这个系统服务来控制的。Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的。另 外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令。
crond 是linux下用来周期性的执行某
 
版权声明:本文为weixin_34738304原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
