文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Linux的计划任务

Linux的计划任务

时间:2010-09-29  来源:fangfuxi

Linux的计划任务

 

一.At 一次性安装任务计划

查看at服务状态,RED HAT默认是开启的

[root@localhost ~]# service atd status

atp服务的启动,停止,重启  service atd  restart |stop |restart

使用方法:  at 时间

例如在17:30 删除tmp目录下test.txt文件

[root@localhost ~]# at 17:30

at> /bin/rm -f /tmp/test.txt

at> <EOT>

job 8 at 2010-09-29 17:30

Ctrd +D结束输入

注:执行命令时要用全路径,即不能用 at> rm –f /tmp/test.txt

可用whereis 命令查看

[root@localhost ~]# whereis rm

rm: /bin/rm /usr/share/man/man1p/rm.1p.gz /usr/share/man/man1/rm.1.gz

 

时间格式表示

1)绝对计时方法

HH:MM[today]

HH:MM tomorrow

HH:MM 星期

Mignighst      /12:00AM

noon          //12:00

teatime       // 4:00PM

2)相对计时

now +n minutes   

now +n hours     

now +n day      

at now+2 minutes  //2分钟后执行

查看当前的任务 : Atq  或者 at –l

 [root@localhost ~]# at -l

8       2010-09-29 17:30 a root

7       2010-09-29 17:30 a root

已执行的任务不会显示

删除未执行的任务: Atrm 任务号 或者 at –d 任务号

[root@localhost ~]# at -l

8       2010-09-29 17:30 a root

 

假如我们执行很多计划且要查看具体任务时,这样显得不方便,我们可以命令写在文件里,然后执行.

1) at -f 文件名 时间点

2) at <文件名 时间点

[root@localhost ~]# echo "/bin/rm -f a.txt" >>testrm.txt

[root@localhost ~]# at 17:30

at> at -f /room/testrm.txt

at> <EOT>

job 9 at 2010-09-29 17:30

 

at的控制文件

/etc/at.allow
/etc/at.deny

系统默认是有at.deny文件,如果某个用户名在这个文件里,他就不能使用at计划任务。如果有at.allow文件,allow文件先行,检查了allow明确允许,就不会检查deny

 

二 Corn :周期性安排进程任务

[root@localhost ~]# service crond status

crond (pid 2363) 正在运行...

crond服务的启动,停止,重启  service crond  restart |stop |restart

 

[root@localhost ~]# cat /etc/crontab

SHELL=/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin

MAILTO=root

HOME=/

 

# run-parts

01 * * * * root run-parts /etc/cron.hourly

02 4 * * * root run-parts /etc/cron.daily

22 4 * * 0 root run-parts /etc/cron.weekly

42 4 1 * * root run-parts /etc/cron.monthly

上面5个星号分别代表:minute hour day-of-month month-of-year day-of-week 

星号(*)可以用来代表所有有效的值。譬如,月份值中的星号意味着在满足其它制约条件后每月都执行该命令。

整数间的短线(-)指定一个整数范围。如1-4 意味着整数 1、2、3、4

用逗号(,)隔开的一系列值指定一个列表。如3, 4, 6, 8 标明这四个指定的整数

正斜线(/)可以用来指定间隔频率。在范围后加上 /<integer> 意味着在范围内可以跳过 integer。如0-59/2 可以用来在分钟字段定义每两分钟。间隔频率值还可以和星号一起使用。例如,*/3 的值可以用在月份字段中表示每三个月运行一次任务。

执行命令

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

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

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

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

 

如下命令表进10月3日30分钟删除文件testlog.test(注意命令要用全路径)

Cornd –e

文件格式

分钟     小时    天    月      星期        要执行的命令

 

      30 * 3 10 * /bin/rm -f /tmp/testlog.test

 

cron 的控制文件

/etc/cron.allow 和 /etc/cron.deny 文件被用来限制对 cron 的使用。这两个使用控制文件的格式都是每行一个用户。两个文件都不允许空格。如果使用控制文件被修改了,cron 守护进程(crond)不必被重启。使用控制文件在每次用户添加或删除一项 cron 任务时都会被读取。

无论使用控制文件中的规定如何,根用户都总是可以使用 cron。

如果 cron.allow 文件存在,只有其中列出的用户才被允许使用 cron,并且 cron.deny 文件会被忽略;

如果 cron.allow 文件不存在,所有在 cron.deny 中列出的用户都被禁止使用 cron

 

 

 

相关阅读 更多 +
排行榜 更多 +
奥丘树海之下小米服手游下载

奥丘树海之下小米服手游下载

角色扮演 下载
网络天才国际服手游下载

网络天才国际服手游下载

休闲益智 下载
御剑红尘手游官方版下载

御剑红尘手游官方版下载

角色扮演 下载