在linux系统中,有着与windows任务计划相类似的那种,即linux定时任务功能,在linux中定时执行某个程序或任务,可以使用at命令或crontab。
at命令是仅执行一次的任务,而crontab可以循环执行相关任务。
本节《鸟哥的linux私房菜》就为大家分享Linux定时任务的相关内容,一起来看看吧。
1、仅执行一次的任务
所需程序
atd服务
at命令
启动atd
千万注意要在root下执行,不然会提示Rejected send message.
at的使用
使用at的权限(因为安全性考虑最好设置)
在/etc/at.allow中设置可以使用at的账号
在/etc/at.deny中设置不可以使用at的账号
例子:
特定时间关机
at如何执行
输入输出:标准输入输出会重定向到mailbox里,所以执行echo "hello"在终端下是看不到的
后台工作:系统会将at工作独立于shell,交给atd程序接管,即使关了shell也没关系
查询与删除at中的工作
查询:atq
删除:atrm jobid
batch:和at相似,只是在cpu负载低时才执行
2、循环执行的任务
所需程序
crontab
权限限制
/etc/cron.allow
/etc/cron.deny
例子:
$ crontab -e #添加任务
进入编辑环境,使用vim编辑
3、可唤醒停机期间的工作任务
anacron:crontab任务因为关机没有执行,anacron可以在开机时检测没有执行的crontab任务,都执行一遍。