linux中计划任务管理

在linux操作系统中,除了用户即时执行的命令操作以外,还可以配置在指定的时间、指定的日期执行预先计划好的系统管理任务(如定期备份数据、定期开启服务等)。

RedHat 6.5系统中的计划任务是由at、crontab命令进行计划任务的设置,其中at命令为一次性计划任务,crontab命令是周期性的计划任务。
(1) at命令(一次性的执行任务)
使用at命令设置的计划任务只在指定的时间点执行一次,前提是需要开启atd系统服务,需要设置计划任务的时间、日期必须在当前系统的时间之后,否则将无法正确设置计划任务。
设置一次性计划任务时,在at命令行中一次指定计划执行任务的时间、日期作为参数(若只指定时间则表示当天的时间,若只指定日期则表示该日期的当前时间),确认后将进入带“at>”提示符的任务编辑界面,每行设置一条执行命令,可以依次设置多条语句,最后按Ctrl+D组合键提交任务即可。

示例:计划明天22:00时自动关闭当前系统
linux中计划任务管理
对于已经设置计划任务但是并未执行的计划任务,可以通过atq命令进行查询
linux中计划任务管理
若要删除at任务,可以使用atrm命令,删除后的at任务将不会被执行,并且不会显示在atq命令的显示结果中
linux中计划任务管理

(2) crontab命令(周期性重复执行任务)
使用crontab命令设置的计划任务可以按预设的周期重复执行,可以大大减轻设置重复性系统管理任务的操作,由软件包cronie提供crontab工具、系统服务crond和配置文件/etc/crontab.
crotab命令常用选项如下:
-e:编辑计划任务列表
-u:指定所管理的计划任务属于哪个用户,默认时针对当前用户,一般只有root用户有权限使用此选项(用于编辑、删除其他用户的计划任务)
-l:列表显示计划任务
-r:删除计划任务列表

每一行仍无配置记录都包括六个数据字段,分别表示不同的含义,每个字段必须定义,如下图
linux中计划任务管理
其中前五个数据字段可以使用下列符号表示
星号“*”:表示取值范围中的任意时间
减号“-”:表示一个连续的时间范围
逗号“,”:表示一个间隔的不连续范围

示例:每天0:00使用tar命令自动备份/etc/httpd目录

linux中计划任务管理
查看当前用户的计划任务列表
linux中计划任务管理
删除当前用户的计划任务列表
删除某一条计划任务时,可以通过crontab –e进行编辑;若要清空当前用户的所有计划任务时,执行crontab –r命令
linux中计划任务管理


注意事项:
定时任务(一般指脚本任务)规则的结尾最好加上“>/dev/null 2>&1”,即不输出任何信息,若不加,时间长了,会产生大量文件占用大量磁盘inode节点,以至于磁盘inode满而无法写入正常数据。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值