常用压缩/解压缩命令
作业管理

例行性命令: at / crontab

simplyzhao posted @ 2008年12月27日 01:05 in Commands & Tips with tags ubuntu at crontab , 1761 阅读

仅进行一次的工作任务分配: at

首先需要有负责任务分配的服务,就是atd
启动该服务或守护程序的命令是:
/etc/init.d/atd restart

其次考虑到安全性并非所有人都可以进行at工作任务分配,我们可以利用/etc/at.allow或者/etc/at.deny这两个文件来进行限制
/etc/at.allow: 只有该文件中的用户才能使用
/etc/at.deny: 只有不在该文件中的用户才能使用
一般只需要/etc/at.deny文件存在即可

语法:
at TIME
TIME可以有多种格式:
HH:MM
HH:MM YYYY-MM-DD
HH:MM[am|pm] [MONTH] [DAY]
HH:MM[am|pm] + number [minutes | hours | days | weeks ]

范例:
#再过五分钟后关机
at now + 5 minutes
at> /bin/sync
at> /bin/sync
at> /sbin/shutdown -h now
at> EOF(按[Ctrl] + d)
job x at 2008-12-25 10:38

查询当前主机有多少at工作任务分配的命令: atq
删除某个工作任务分配的命令atrm job-number

 

循环执行的例行性命令: crontab

语法:
crontab [-l | -e | -r]
-e: 编辑crontab的工作内容
-l: 查看crontab的工作内容
-r: 删除所有crontab的工作内容

范例:
#每天12:00发送邮件给simplyzhao用户
crontab -e
#此时进入vi编辑状态,每项工作占一行
0  12  *  *  *  mail simplyzhao -s "12:00 theme" < /home/simplyzhao/.bashrc
#分 时 日 月 周 命令

时间参数的含义
分钟       小时       日期        月份        周
0-59      0-23        1-31       1-12        0-7
*: 任何时间都接收
, : 分隔时段,例如每天3:00与6:00表示为: 0 3,6 * * * command
- : 表示范围,例如8点到12点之间每小时的20分做一项工作: 20 8-12 * * * command
n/: 每隔n单位时间,例如每隔5五分进行: */5 * * * * command

系统级设置
直接编辑/etc/crontab文件

通常,cron服务的最低检查限制是"分钟",所以cron会每分钟去读取一次/etc/crontab或者/var/spool/cron中的数据
另外系统已经存在一些定期执行的文件,例如cron.daily, cron.hourly等等,也可以直接将符合条件的工作直接放在这些目录中

Enjoy Linux, Fighting.

登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter