linux定时任务crontab的一些心得

crontab是linux用来添加定时任务的一个工具

crontab命令用法

crontab -l: 查看当前用户下面的定时任务列表
crontab -e : 编辑当前用户的定时任务(新增,删除,修改)
crontab -u user01: 指定用户
如:
crontab -u wls81 -l 查看用户user01的定时任务列表
crontab -u wls81 -e 编辑用户user01的定时任务

crontab格式

基本格式 :
*           *          *          *          *      command
分        时        日        月       周     命令
0-59    0-23    1-31    1-12    0-6    命令

一共6列,前面5个*代表执行时间,command为执行命令,另外,下面几个特殊符号可能使定时任务的执行时间设置更加灵活

"*" :代表取值范围内的所有的属主,如:0 12 * * *代表每天12点
"/" :代表每,如:0 */5 * * *代表每5个小时
"-" :代表范围,从某个数字到某个数字,如:0 8 1-3 * *代表每个月的1号到3号每天08:00
"," :代表多个数字用逗号隔开,如:0 3,6 * * *代表每天3点和6点
以上特殊字符也可以组合起来使用,如:0 20-8/2,10 * * *代表每天晚上8点到早上8点之间每2个小时,早上10点

以上是crontab的一些基础用法,下面说一下crontab批量操作的小技巧

crontab批量操作

1、将文件直接导入crontab方式

crontab -l>/tmp/lxm
sed -i "s/old_str%new_str/g" /tmp/lxm #替换,如果需要添加,直接在/tmp/lxm文件中修改
crontab /tmp/lxm

2、和第一种类似

(echo "59 19 * * * ps -ef" ; crontab -l )| crontab

3、直接修改/var/spool/cron下面的文件,文件以用户名命名,crontab -l命令可以看到,亲测有效
4、修改/etc/crontab文件,网上说的,具体没有试验过,不过用crontab -l命名看不到

crontab权限

linux有些用户可以用定时任务,有些不可以,原因是crontab也是有权限控制的,linux是通过/etc/cron.allow或者/etc/cron.deny来做权限控制的。
1、如果/etc/cron.allow文件存在,那么只有文件中列出的用户可以使用cron,/etc/cron.deny文件会被忽略
2、如果/etc/cron.allow文件不存在,那么/etc/cron.deny文件中列出的用户不能使用cronetc/cron.deny

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值