unix命令——crontab

cron——执行计划任务。在一定的时间执行指定的任务。

很显然,它是系统的一个守护进程,不过默认一般是没有开启的。需使用service crond start开启。


但不是直接使用该命令来指定计划任务,而使用crontab来编写crontab文件(每个用户均有一个crontab文件)来指明需要执行的计划任务。
crontab中的计划任务格式一般为:
<分><时><日><月><星期><task>
分:0-59
时:0-23
日:1-31
月:1-12
星期:1-7
task:一般是对应的其他命令

crontab命令格式如下
crontab [-u  user] -option


option有以下:
-l 列出所有的计划任务,格式为
-e 编写crontab文件(每个用户拥有一个单独的crontab文件)
-r 删除crontab文件


使用-e 对crontab文件进行编辑的时候,与vi的操作是一致的。不过当编辑结束以后,crontab将对编写的计划任务进行格式检查,如果格式不对将会报错。所以还是不要直接使用vi去编辑crontab文件,不过一般情况下也不允许直接编辑crontab文件。详见使用手册的提示:Each user can have their own crontab,  and though  these are files in /var/spool/ , they are not intended to be edited directly.(大意为:每个用户都有自己的crontab,虽然这些文件在/var/spool目录下,但是不能直接对它们进行编辑)

一个例子:

[root@localhost sharedfolder]# crontab -e

1-59 * * * * /bin/echo 'date' >> /home/sharedfolder/tem


(没有写注释,这个计划任务是每隔一分钟向tem文件中写入date)
(可以使用shell的注释符"#"编写对应的注释来对命令进行说明)
还有需要补充的是:
关于执行计划任务的权限问题。

如果系统中有cron.allow文件,则用户名在其中的用户所编写的crontab中的任务可以被执行,否则不行;
而如果系统中有cron.deny文件,与上面的意思相反,大家应该都懂得。
如果两者都没有的话,那就只有root用户的计划任务可以被执行。
不过,这两个文件的作用的优先级为cron.allow>cron.deny
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值