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

RedHat6.5系统中的计划任务是由at、crontab命令进行计划任务的设置,其中at命令为一次性计划任务linux 常用命令,crontab命令是周期性的计划任务。

(1)at命令(一次性的执行任务)

使用at命令设置的计划任务只在指定的时间点执行一次,前提是须要开启atd系统服务,须要设置计划任务的时间、日期必须在当前系统的时间以后,否则将难以正确设置计划任务。

设置一次性计划任务时,在at命令行中一次指定计划执行任务的时间、日期作为参数(若只指定时间则表示当日的时间,若只指定日期则表示该日期的当前时间),确认后将步入带“at>”提示符的任务编辑界面,每行设置一条执行命令,可以依次设置多条句子,最后按Ctrl+D组合键递交任务即可。

示例:计划明日22:00时手动关掉当前系统

linux中计划任务管理

对于早已设置计划任务并且并未执行的计划任务,可以通过atq命令进行查询

若要删掉at任务,可以使用atrm命令linux系统计划任务,删掉后的at任务将不会被执行,但是不会显示在atq命令的显示结果中

linux中计划任务管理

linux系统计划任务_linux任务计划不生效_任务计划系统启动不执行

(2)crontab命令(周期性重复执行任务)

使用crontab命令设置的计划任务可以按预设的周期重复执行,可以大大减少设置重复性系统管理任务的操作,由软件包cronie提供crontab工具、系统服务crond和配置文件/etc/crontab.

crotab命令常用选项如下:

-e:编辑计划任务列表

-u:指定所管理的计划任务属于那个用户,默认时针对当前用户,通常只有root用户有权限使用此选项(用于编辑、删除其他用户的计划任务)

-l:列表显示计划任务

-r:删掉计划任务列表

linux系统计划任务_linux任务计划不生效_任务计划系统启动不执行

每一行仍无配置记录都包括六个数据数组,分别表示不同的涵义,每位数组必须定义,如右图

其中前五个数据数组可以使用下述符号表示

星号“*”:表示取值范围中的任意时间

加号“-”:表示一个连续的时间范围

任务计划系统启动不执行_linux系统计划任务_linux任务计划不生效

冒号“,”:表示一个间隔的不连续范围

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

查看当前用户的计划任务列表

linux任务计划不生效_linux系统计划任务_任务计划系统启动不执行

删掉当前用户的计划任务列表

删掉某一条计划任务时,可以通过crontab–e进行编辑;若要清空当前用户的所有计划任务时,执行crontab–r命令

注意事项:

定时任务(通常指脚本任务)规则的结尾最好加上“>/dev/null2>&1”,即不输出任何信息,若不加linux命令chm,时间长了,会形成大量文件占用大量c盘inode节点,以至于c盘inode满而未能写入正常数据。

Tagged:
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复