linux命令:任务计划crontab anacrontab at cron


任务计划:

1、在未来的某个时间点执行一次某任务: at  batch 

格式: at time     直接用 at 时间  即可  at -l 查看计划列表

at> COMMAND

at> Ctrl+d

指定时间:

绝对时间:HH:MM  DD.MM.YY  MM/DD/YY

相对时间:now+#

单位:minutes,hours,days,weeks

模糊时间:noon,midnight,teatime

命令的执行结果将以邮件的形式发送给安排任务的用户

at -l查看未执行的任务计划 at -l=atq

at -d JOB_ID  取消未执行的任务计划 at -d 计划任务ID号

at的黑名单和白名单的文件/etc/at.deny /etc/at.allow

[[email protected] ~]# at -l

[[email protected] ~]# at -l

32016-12-17 08:36 a root

22016-12-17 08:28 a root

[[email protected] ~]# at -d 2

[[email protected] ~]# at -l

32016-12-17 08:36 a root  编号2任务计划已取消

Usage:

[[email protected] ~]# at now+3minutes  3分钟后执行

at> ls /var    需要执行 ls/var 命令

at> cat /etc/fstab   需要执行 cat /etc/fstab 命令

at> <EOT>          按ctrl+d完成任务计划

job 1 at 2016-12-17 08:16

[[email protected] ~]#

2、周期性地执行某任务:执行结果将以邮件的形式发送给管理员

cron:自身是一个不间断运行的服务

anacron: cron的补充,能够实现让cron因为各种原因在过去的时间该执行而未执行的任务在恢复正常        执行一次;

cron配置文件:/etc/crontab

[[email protected] ~]# cat /etc/crontab

SHELL=/bin/bash      #定义执行脚本的shell为/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin  #定义脚本执行的环境变量位置

MAILTO=root      #执行结果发送给root用户

HOME=/          #家目录

# run-parts:表示按照该目录或文档的顺序执行里面的所有命令脚本

01 * * * * root run-parts /etc/cron.hourly   每小时的第一分钟

02 4 * * * root run-parts /etc/cron.daily   每天的4点02分

22 4 * * 0 root run-parts /etc/cron.weekly   每周日的4点22分

42 4 1 * * root run-parts /etc/cron.monthly  每月1日的4点42分

cron:

系统cron任务:

配置文件/etc/crontab

格式:  分钟 小时 天 月 周 用户 任务

用户cron任务:

配置文件/var/spool/cron/USERNAME

格式:  分钟 小时 天 月 周 任务

时间的有效取值:

分钟:0-59   小时:0-23  天:1-31  月:1-12  周:0-7,0和7都表示周日

时间通配表示:

*:对应的所有有效值

3 * * * * : 每小时的第3分钟

3 * * * 7 :每周日的每个小时的第3分钟

13 12 * * * :每天的12点13分钟

,: 离散时间点:

10,40 02 * * 2,5 :每周二,周五的2点10分和2点40分

-:连续时间点:

10 02 * * 1-5 :每周一到周五的2点10分

/#: 对应取值范围内每多久一次  比每单位小的时间必须固定某个时间点

*/3 * * * * :每隔3分钟

10 */2 * * * : 每隔2小时执行一次

10 06 */2 * * : 每隔2天执行一次

cron的环境变量:cron执行所有命令都去PATH环境变量指定的路径下去找

3、用户任务的管理:

   crontab  要想crontab执行,crond服务必须正在运行,

          查看运行状态 service cront status

[[email protected] ~]# service crond status

crond (pid  3733) 正在运行...

       -l:列出当前用户的所有cron任务

-e:编辑cron任务,按下a进行输入,按esc再输入:wq保存退出。

[[email protected] ~]# crontab -e  先输入crontab -e 再按a进行编辑,

编辑完后按esc再输入:wq保存退出。

*/3 * * * * /bin/echo "how are you?"

       -r:删除所有cron任务,只移除某一条计划任务,只需crontab -e编辑删除其中的任务即可

-u:USERNAME 管理其用户的cront任务

anacrontab: /etc/anacrontab


时间: 2024-08-01 22:43:02

linux命令:任务计划crontab anacrontab at cron的相关文章

linux配置任务计划-——crontab

一.任务计划管理--crontab 编辑计划任务:crontab -e[-u 用户名] 查看计划任务:crontab -l[-u 用户名] 删除计划任务:crontab -r[-u 用户名] root用户可以管理指定用户的计划任务 普通用户只能管理自己的计划任务 二.任务计划的配置格式 * * * * * 分钟 小时  日期  月份  星期 分钟:取值为从0-59之间的任意整数 小时:取值为从0-23之间的任意整数 日期:取值为从1-31之间的任意整数 月份:取值为从1-12之间的任意整数 星期

Linux命令学习计划【sed】

引言: Sed命令是linux里用于文本行处理的命令. 为了便于说明,我在/usr/dict下创建了字典words并以此作为演示模板 先用nl 打印下words内容: *打印篇: Q1:如何打印某一行数据? 如果要打印第一行数据,则使用: sed –n 1p words 如果要打印最后一行数据,则使用: sed –n ‘$p’ words 注意的是:如果是某个具体的行号,并不需要加引号,如果含’$’等特殊字符或某些模式匹配的时候需要加引号. 你会想,仅仅是能看到头行和结尾行的数据,有什么稀奇的?

Linux命令之文件同步、定时备份 -rsync,cron,crontab

一.rsync介绍(可忽略) Rsync(remote synchronize)是一个远程文件同步工具; Rsync使用"Rsync算法"来同步文件,该算法只传送两个文件的不同部分,因此速度相当快; Rsync是替代rcp的一个工具,目前由rsync.samba.org维护,因而rsync.conf文件的格式类似于samba的主配置文件; Rsync可通过rsh或ssh使用,也能以daemon模式运行,以daemon方式运行时,Rsync Server会打开一个873端口等待客户端连接

【转】每天一个linux命令(50):crontab命令

原文网址:http://www.cnblogs.com/peida/archive/2013/01/08/2850483.html 前一天学习了 at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,linux系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另外, 由于使用者自己也可以设置计划任务,所以, Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令. 一.crond简介

linux之at batch crontab命令

Linux任务计划.周期性任务执行 未来的某时间点执行一次任务:at, batch    周期性运行某任务: cron 电子邮件服务:        smtp: simple mail transmission protocol, 用于传送邮件:        pop3: Post Office Protocol        imap4:Internet Mail Access Protocol mailx - send and receive Internet mail MUA:Mail U

linux命令:crontab命令(转)

一.crond简介 crond是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务. Linux下的任务调度分为两类,系统任务调度和用户任务调度. 系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘.日志清理等.在/etc目录下有一个crontab文件,这个就是系统任务调度的

[笔记] linux中的计划任务crontab

不能拒绝进步 cron来源于希腊单词chronos(意为"时间"),指linux系统下一个自动执行指定任务的程序(计划任务). 1--crontab 的命令选项 #crontab -u <-l, -r, -e> -u指定一个用户 -l列出某个用户的任务计划 -r删除某个用户的任务 -e编辑某个用户的任务 .csharpcode, .csharpcode pre { font-size: small; color: black; font-family: consolas,

linux命令之crontab定时执行任务

一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务 工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务. Linux下的任务调度分为两类,系统任务调度和用户任务调度. 系统任务调度:系统周期性所要执行的工作,比如写缓存数据到硬盘.日志清理等.在/etc目录下有一个crontab文件,这个就是系统任务调

每天一个linux命令(50):crontab命令

前 一天学习了 at 命令是针对仅运行一次的任务,循环运行的例行性计划任务,linux系统则是由 cron (crond) 这个系统服务来控制的. Linux 系统上面原本就有非常多的计划性工作,因此这个系统服务是默认启动的.另外, 由于使用者自己也可以设置计划任务,所以, Linux 系统 也提供了使用者控制计划任务的命令 :crontab 命令. 一.crond简介 crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完