Linux学习网!Linux爱好者的家园~凡事都是必须经过枯燥无味阶段才能做到较高层次的。
首页 新闻 Linux命令 学习入门 Ubuntu 服务配置 数据库 Linux发行版 视频教程 Linux下载 Linux论坛 留言本

TOP

学会Linux计划任务(一)
2011-02-23 09:28:42 来源:Linux学习网 】 浏览:80次 评论:0
Linux有三种计划任务:

  at:指定一个时间执行一个任务 (适用一个或多个任务,执行一次后就不用)

  cron:根据一个时间表自动执行任务 (使用一个或多个任务,周期性执行)

  系统级别的计划任务及其扩展anacron:在一个指定时间间隔错过后自动执行任务

  一、at服务:安排一个任务在未来执行,需要一个atd的系统后台进程

  #at now+2 minutes 回车

  >输入要执行的命令

  >ctrl+d 结束输入

  atq;查询当前的等待任务

  用atq来查询,已经运行的任务,就消失了。这就是at计划任务的重点,只运行一次

  atrm:删除等待任务

  启动计划任务后,如果不想启动设定好的计划任务可以使用atrm命令删除。

  格式:atrm 任务号

  命令后面跟计划任务编号,如果不跟,就会删除这个用户所有的计划任务。

  还可以进入到/var/spool/at目录里把计划任务删除,计划任务的文件都保存在该目录里,可以用rm -f 文件名来删除(以文件的形式删除计划任务,因为计划任务是以文件形式保存在该目录中)

  在通常情况下,超级用户都可以使用这个命令。对于其他用户来说,能否可以使用就取决于两个文件:/etc/at.allow和/etc/at.deny

  如果你要让哪个用户不能使用计划任务,就直接把他的用户名写进去就可以了,一排只能写一个。

  同时写入allow 及deny, 允许

二、cron服务

  上面已经简单介绍了cron的一些进程和控制。下面我们来看看cron怎么实现。

  相对与at,cron的优点就是能够周期性的执行某个命令,at却只能执行一次

  cron的后台进程名字是crond ,cron也是system V的服务,所以我们可以service crond start|stop 来启动和关闭此服务,也可以使用chkconfig或者ntsysv来选择cron服务的默认开启,这些命令在以前我们都讲过的

  #crontab -e 编辑当前用户的cron表

  #crontab -l 查看当前用户的cron表

  #crontab -r 删除当前用户的cron进程

  #crontab -u 用户名 以某用户的身份来控制cron表

  还有个重要的知识点,就是当用户的计划任务建立后是存放在/var/spool/cron这个目录

  当使用crontab -e编辑当前用户的cron表后,会出现一个vi文件,cron的格式是这样的。分成两列,左边是时间,右边是运行的命令。时间是由5个部分组成。

  例:

  * * * * * wall hello everyone

  5个星号分别代表:minute hour day-of-month month-of-year day-of-week 分时日月周,而wall hello everyone 这是命令内容。上面的意识是每分每小时每天每月每周广播hello everyone。具体时间大家可以自己定义。如果要每两分钟发送就用*/2代替第一个*。也可以是用具体时间来表示。

  Crontab –e 编辑的任务不要加入用户名

  第一个*星号代表个小时的第几分钟:minute 范围是从0-59

  第二个*星号代表每天的第几个小时:hour 范围是从0-23

  第三个*星号代表每月的第几个日:day-of-month 范围从1-31

  第四个*星号代表没年的第几个月:month-of-year 范围从1-12

  第五个*星号代表每周的星期几:day-of-week 范围从0-6,其中0表示星期日

  用户名:也就是执行程序要通过哪个用户来执行,这个一般可以省略;

分享到:
你可能感兴趣的文章:
Tags:Linux计划任务 Linux
首页 上一页 1 2 下一页 尾页 1/2/2
】 【打印繁体】【投稿】 【评论】 【关闭】 【返回顶部
上一篇Linux如何查看Log文件 下一篇linux系统Linuxprofile文件

推荐图文

赞助商

相关栏目

最新文章

热门文章

推荐文章