linux计划任务at crontab anacron

at:    用于执行一次性任务

at相关的配置文件  /etc/at.allow   /etc/at.deny

如果存在/etc/at.allow文件,仅允许at.allow中包含的用户使用at;

如果不存在/etc/at.allow文件,则/etc/allow.deny文件被检查,at.deny文件中不包含的用户都允许使用at;

如果这两个文件都不存在,则仅允许root使用at;

缺省情况下,存在一个空的/etc/at.deny,允许所有用户使用at.

atq = at –l  查询任务队列

[[email protected] ~]# atq
9       2014-08-29 17:00 a root
8       2014-08-28 16:00 a root
[[email protected] ~]# at -l
9       2014-08-29 17:00 a root
8       2014-08-28 16:00 a root

atrm = at –d 删除任务

[[email protected] ~]# atrm 8
[[email protected] ~]# atq
9       2014-08-29 17:00 a root

at 18:00 tomorrow –f file   从文件中读取任务

[[email protected] ~]# at 18:00 tomorrow -f ccdb_rsync.sh
job 11 at 2014-08-29 18:00
[[email protected] ~]# atq
9       2014-08-29 17:00 a root
10      2014-08-29 18:00 a root
11      2014-08-29 18:00 a root

at 4pm + 3 days   在3天后的下午4点执行任务

[[email protected] ~]# at 4pm + 3 days
at> echo "hello"
at> <EOT>
job 15 at 2014-08-31 16:00

at 10:10 Sep 1  在9月1日的上午10:10分执行任务

[[email protected] ~]# at 10:10 Sep 1
at> echo "hello"
at> <EOT>
job 16 at 2014-09-01 10:10

crontab:      用于执行周期性任务

crontab相关的配置文件: /var/spool/cron    /etc/cron.allow   /etc/cron.deny

/var/spool/cron/:用于保存用户的任务的目录

如果存在/etc/cron.allow文件,则仅允许cron.allow文件中存在的用户使用crontab;

如果存在/etc/cron.deny文件,则仅拒绝cron.deny文件中存的用户使用crontab;

如果/etc/cron.allow  /etc/cron.deny都不存在,则只允许root使用crontab.

crontab –l 显示任务列表

crontab –e 编辑任务

[[email protected] cron]# crontab -l
*/5 * * * * echo "hello world!"

0 5 * * * touch file_`date +\%F`.txt

crontab任务的格式

[[email protected] ~]# cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/

# For details see man 4 crontabs

# Example of job definition:
# .---------------- 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

第1个*:分(0-59)

第2个*:时(0-23)

第3个*:日(1-31)

第4个*:月(1-12)

第5个*: 周(0-6或sun,mon,tue,wed,thu,fri,sat)

command to be executed:代表执行的命令

例:

1.每5分钟执行一次

*/5 * * * *  echo “hello world”

2.每小时10分,20-30分执行

10,20-30 * * * *  echo “hello world”

3.执行秒级的任务,每10秒执行一次

* * * * * for i in {1..5}; do /bin/echo “how are you?”; sleep; done

4.如果执行的命令里包含%,需要转义

0 5 * * * touch file_`date +\%F`.txt

或者

0 5 * * * touch file_`date +’%F’`.txt

anacron

anacron也用于执行周期性任务,频率为每小时、每天、每周、每月 分别对应/etc/cron.hourly,/etc/cron.daily,/etc/cron.weekly,/etc/monthly;

anacron主要用于非24小时开机的系统,通过读取/etc/anacrontab文件来执行任务

时间: 2024-12-17 21:05:12

linux计划任务at crontab anacron的相关文章

Linux 系统定时任务:crontab,anacron

Linux 系统定时任务:crontab,anacron 一.Cron 服务 1. 启动服务 service cron start 2. 关闭服务 service cron stop 3. 重启服务 service cron restart 4. 重新载入配置 service cron reload 5. 查看服务状态 service cron status 二.用户定时任务 1. 选项 -e:执行文字编辑器来设定定时任务-l:列出目前所有定时任务-r:删除目前所有定时任务(慎用) 要经常备份定

Linux计划任务at&batch&crontab

计划任务        执行一次某任务:at,batch        周期性运行某任务:crontab    1.at命令,只执行一次 at/atq/atrm/batch    at [option]... time        HH:MM[YYYY-mm-dd] //        noon,midnight,teatime //12:00,24:00,16:00        tomorrow HH:MM         now+#            UNIT:minutest,ho

Linux计划任务 Crontab 详解

Linux公社 2018-08-02 Q:Linux下,如果想要在指定的某个时间点干点什么事,该如何制定计划? A: 计划任务,创建和管理在指定时间自动执行的任务. 注意: 要是任务计划在指定时间自动运行,计划任务的服务必须是启动的. 1.使用at命令调用atd进程设置在某个特定的时间,执行一次性任务. 2.使用crontab命令调用crond进程,设置按固定的周期(如每天.每周等)重复执行预先计划好的任务. 一.一次性计划任务 在指定的日期.时间点自动执行预先设置的一些命令操作. 系统服务的名

Linux计划任务Crontab实例详解教程

说明:Crontab是Linux系统中在固定时间执行某一个程序的工具,类似于Windows系统中的任务计划程序 下面通过详细实例来说明在Linux系统中如何使用Crontab 操作系统:CentOS 一.安装crontab yum install vixie-cron  #安装 chkconfig crond on  #设为开机启动,先要安装chkconfig(yum install chkconfig) service crond start  #启动 service crond stop  

25、Linux计划任务详解

Linux任务计划 相信每个人都有使用闹钟的习惯,比如提醒一次,工作日提醒,女朋友生日提醒(首先你要先有个女朋友),在设定闹钟之后,我们可以在设定的时间去提醒你做什么事情 Linux计划任务工具介绍 在各类系统上面都有计划任务功能,在linux上面主要两种工具,at和crontab at命令是专门来执行处理一次性的任务计划的 crontab可以根据定义的时间周期,循坏的去做一些事情 任务计划分类: 一次性的任务计划:只执行一次就结束 周期性的任务计划:每隔一定时间就去执行 at一次性任务 假如我

linux计划任务详解

Linux任务计划,周期性任务执行 (我们以前已经提到过数据备份的概念了,假如在某种场景中我们需要做数据备份,将来我们可能遇到MySQL等各种各样的提供数据管理等相关的服务器程序数据,能够做数据备份,那就必然会用到这个功能.对于企业来讲最重要的是数据,数据备份是非常重要的,有的数据需要每1天或者每几个小时进行备份一次,比方说我们希望在凌晨的时候讲某个目录的数据复制一份,或者把某个临时目录比方说"/tmp"目录中的临时文件每多长时间都清理一次.这每一天都做的任务就叫周期性任务.像那种仅仅

linux计划任务(二)

计划任务的授权 1.at任务 /etc/at.allow /etc/at.deny 2.crontab任务 /etc/cron.allow /etc/cron.deny [注:如果allow文件存在,则allow中的用户可以使用计划任务,allow文件不存在则去找deny文件,deny文件中的用户不可以使用计划任务] [注:如果allow和deny文件都不存在,则表示只有root用户可以使用] 计划任务的补救 anacron服务 延迟补救 如果计划任务执行失败 [[email protected

Linux计划任务(转载)

Linux计划任务(转载) Linux的计划任务是系统管理方面的一个重要内容,是系统自动完成工作的一种实现方式,正因为有了计划任务,我们才可以完全实现系统管理的脚本化和自动化. 关于计划任务,Linux根据用户需要提供了两种服务,一种是atd服务,另一种是cron服务 1.atd服务 如果你的计划任务只要执行一次,那么就请你使atd服务.在默认情况下,Linux系统是开启了atd这个服务的.如果不确认你的Linux是否开启了atd服务,请使用下面这个命令查看: # /etc/init.d/atd

linux 计划任务(十)

[教程主题]: 计划任务 [1]at 在windows系统中,windows提供了计划任务这一功能,在控制面板 -< 性能与维护 -< 任务计划, 它的功能就是安排自动运行的任务. 通过'添加任务计划'的一步步引导,则可建立一个定时执行的任务. 在linux系统中你可能已经发现了为什么系统常常会自动的进行一些任务?这些任务到底是谁在支配他们工作的?在linux系统如果你想要让自己设计的备份程序可以自动在某个时间点开始在系统底下运行,而不需要手动来启动它,又该如何处置呢? 这些例行的工作可能又分