L5 linux计划任务总结与练习

1、总结Linux系统上的任务计划(at、crontab)的详细使用方法;

Linux上的任务计划:

任务计划:
在未来时间点一次性执行某任务:at, batch
周期性执行某任务: crontab

注意:执行计划在执行后(无论成功失败)是以邮件方式通知的。

指令:at

需要开启atd进程(在redhat中atd是默认随系统启动而启动)定时任务,指定一个时间执行一个任务,只能执行一次。

语法:# at [参数] [时间]
at> 执行的指令

退出at命令 ctrl+d

TIME:
(1) 绝对时间
HH:MM,
MMDD[CC]YY, MM/DD/[CC]YY, DD.MM.[CC]YY or [CC]YY-MM-DD
tomorrow

实例:

#HH:MM 某时某分
[[email protected] tmp]# at 18:00  #在今日的 18:00 时刻创建文件并输入内容,若该时刻已超过,则明天的 HH:MM 进行此任务。
at> touch /test.txt
at> echo "hello">>/test.txt
at> <EOT>
job 5 at Mon Sep  7 18:00:00 2015
#特定的某年某天某时某分创建文件
at 16:02 2015-9-7
at> touch /97
at> <EOT>
job 6 at Mon Sep  7 16:02:00 2015
#tomorrow  明天
[[email protected] tmp]# at 04:00 tomorrow #明天04:00创建文件tomorrow.file
at> touch /tomorrow.file
at> <EOT>
job 7 at Tue Sep  8 04:00:00 2015

(2) 相对时间

now+#UNIT
minute, hour, day, week

实例:

#从现在开始过5分钟创建文件after5min.txt
[[email protected] tmp]# date       
Mon  7 Sep 16:06:50 CST 2015      #现在时间16:06:50
[[email protected] tmp]# at now+5minute
at> touch /tmp/afert5min.txt
at> <EOT>
job 8 at Mon Sep  7 16:11:00 2015  #5分钟后,到11分执行
[[email protected] tmp]#at 5pm + 3 days      #三天后的下午 5 点锺执行 /bin/ls
at> /bin/ls
at> <EOT>
job 7 at 2015-09-10 17:00

(3) 模糊时间
midnight
noon
teatime

常用选项:
-q QUEUE: at作业队列;
-f /PATH/FROM/SOMEFILE:从指定的文件中读取要运行的作业;
-l: 查看作业队列中的等运行作业列表;相当于使用atq命令;
-c AT_JOB_NUM: 查看待运行作业的内容;
-d: 删除指定作业;相当于atrm

实例:

[[email protected] tmp]# at -l     #查看作业队列中的等运行作业列表;相当于使用atq命令;
5       Mon Sep  7 18:00:00 2015 a root
7       Tue Sep  8 04:00:00 2015 a root
8       Mon Sep  7 16:11:00 2015 a root
[[email protected] tmp]# at -d 5    #删除指定作业;相当于atrm 5
[[email protected] tmp]# at -l 
7       Tue Sep  8 04:00:00 2015 a root
8       Mon Sep  7 16:11:00 2015 a root

batch:
由系统自行选择在资源较为空闲时运行指定的任务;

扩展指令batch
batch为,at命令的特殊版本,在执行的任务会占用大量资源的时候用,只在cpu需求低于cpu能力80%的时候使用

# batch
at> echo "hi" > /dev/tty2
batch创建的任务也是通过atq查看,atrm删除

2、每周一到周六的凌晨3点20分,运行cp命令对/etc/目录进行归档另存,存储位置为/backups/etc-YYYY-MM-DD;

20 3 * * 1-6  /usr/bin/cp -af /etc /backup/etc_"`date +%F`"

3、每周日凌晨2点30分,运行cp命令对/etc/fstab文件进行备份,存储位置为/backup/fstab-YYYY-MM-DD-hh-mm-ss;

30 2 * * 0 /usr/bin/cp -p /etc/fstab /backup/fstab_"`date +%F-%H-%M-%S`"

4、每天晚上12点,取得/proc/meminfo文件中所有以S或M开头的行,追加至/statistics/meminfo.txt文件中,且每天的消息之前,要加上类似===============分隔线;

0 24 * * * /usr/bin/egrep  ‘^S|^M‘ /proc/meminfo >>/statistics/meminfo.txt &&echo "=========`date +%F` ==========">>/statistics/meminfo.txt


时间: 2024-10-15 09:46:40

L5 linux计划任务总结与练习的相关文章

25、Linux计划任务详解

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

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计划任务(转载)

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

linux 计划任务(十)

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

linux计划任务自动备份并ftp上传脚本

#!/bin/sh # 备份 #bak_dir=`date +%C%y%m%d%H%M` ##文件命名规则可以是时间 backup_dir=/home/IPTV4.9 ##存储备份文件路径 mkdir -p $backup_dir Ip_addr=`ifconfig \`route |grep default |awk '{print $8}'\` |grep Bcast |awk -F: '{print $2}' |awk '{print $1}'` Host_name=`hostname`

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计划任务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  

学习Linux计划

决心书 我叫关万鑫(也可以叫我关鑫),今年22岁,学习也不太好,念完初二就不念了,爸妈在我14岁的时候离婚一直跟在老妈身边,这么些年老妈为我付出了太多太多,为我操碎了心, 总想回报她. 以前总是在工厂里干活,工厂里的活又脏又累,一天天造的每个孩子样.那个时候才18.9,厂里的人就说这么小的孩子怎么不学点什么,那个时候就感觉学什么啊,我的人生非常迷茫.(真的受够了工厂)在不经意的一天我的好哥们他跟我提起了老男孩,一开始还不相信能有那么高的工资还不累的工作,家里边也不是太富裕,开始的时候家里是拒绝的

Linux计划任务crontab运行脚本不正确的问题

问题的由来 写好的程序希望在崩溃之后能够自启动,于是利用linux的crontab功能,添加一个计划任务,每分钟执行一个脚本查看需要监控的进程是否还在,如果不在则启动之,否则不做任何事情.这么一个简单的脚本在crontab中运行和在shell终端手工运行的结果却不一样. 问题描述 以下是监控脚本/home/watch.sh的内容: #!/bin/sh shell_log_file=/home/start.log pid_count=`pidof video_checkup | wc -w` pa