您的位置:首页 > 其它

ubuntu设定计划任务at batch crontab

2013-07-31 11:16 357 查看
at    安排作业在某一时刻执行一次

batch 安排作业在系统负载不重时执行一次

cron 安排周期性运行的作业

1. 一次性计划at和batch

at命令指定时间的方式

绝对计时方法:

midnight noon teatime

hh:mm [today]

hh:mm tomorrow

hh:mm 星期

hh:mm MM/DD/YY

相对计时方法:

now+n minutes

mow+n hours

now+n days

用法:

指定在今天下午17:30执行某命令(假设现在时间是下午14:30,2012年1月11日)

命令格式:

at 5:30pm

at 17:30

at 17:20 today

at now+3 hours

at now+180 minutes

at 17:30 12.1.11

at 17:30 1.11.12

好!现格式知道了,玩个实例吧!

[root@bogon ~]# at now+5 minutes

at>

  我们定的时间是5分钟之后,现在可以在at下面输入各种任务,保存!5分钟之后执行;不过,我们需要注意,在用命令时最好写命令的绝对路径,为了安全。

[root@bogon ~]# at now+5 minutes

at> /usr/bin/wall < /etc/motd    做一个广播,把etc/motd 文件广播出去

at>                可以继续写其它的计划

at> <EOT>

job 2 at 2012-05-20 13:43    ctrl+d保存计划并退出

是否还担心我们的计划是否启动,通过下面两个命令查看at进程是否正常启动

[root@bogon test]# at -l

3 2012-05-20 13:57 a root

[root@bogon test]# atq

3 2012-05-20 13:57 a root

如果真的没有启动的话,可以通过手工方式重新启动一下

[root@bogon ~]# /etc/rc.d/init.d/atd start

删除at计划任务

[root@bogon test]# at -d

查看at计划任务

[root@bogon test]# ls /var/spool/at/

2. batch命令

作用:

  安排一个或多个命令在系统负载较轻进运行一次(一般情况下负载较轻指平均负载降到0.8以下)

使用方法同at

3. 周期性计划命令crontab

作用:用于生成cron进程所需要的crontab文件

crontab的命令格式

crontab {-l|-r|-e}

-l   显示当前的crontab

-r   删除当前的crontab

-e   使用编辑器编辑当前crontab文件

好多人都觉得周期计划任务设置起来比较麻烦,其实我们只要掌握规律就很好设置。

crontab -e

规则:  把知道的具体的时间添上,不知道的都添加上*

分钟    小时   天    月    星期   命令/脚本

假如,我们每天早上4点要做一下操作,以下面方式表示:

分钟    小时    天    月  星期    命令/脚本

*    18    *   *   1,3 [具体的操作]

假如,我们每周一和三下午的6点要做一下操作,以下面方式表示:

分钟    小时   天   月   星期    命令/脚本

*    4    *    *   *    [具体的操作]

  案例:在上学的时候都有上机课,周一到周五,下午5点30上课结果。我们需要在5点30发一个通知,5点45自动关机。设定计划任务需要分两步完成,第一步提醒,第二步关机

分钟   小时    天   月   星期    命令/脚本

30   17    *    *    1-5    /usr/bin/wall < /hzh/test/guanji.wall

45    17   *    *    1-5    /usr/bin/shudown -h now

操作方法:

[root@bogon test]# crontab -e    回车会进入一个vi文本中

  根据我上面介绍格式编写内容,然后保存退出

crontab: installing new crontab 表示创建计划成功

通过下面方式进行查看计划:

[root@bogon test]# cd /var/spool/cron

[root@bogon cron]# ls

root

[root@bogon cron]# cat root

30 17 * * 1-5 /usr/bin/shudown -h now
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: