Linux定时任务

一、/var/spool/cron/$USER

目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名

$USER为当前用户

使用root用户上传root文件

可以使用crontab -u username -e命令编辑
在这里插入图片描述
注:文件名需要和当前用户相同

二、/etc/crontab

只有root用户可以使用,使用时需root权限,而且必须指定运行用户,才会执行

这个文件负责调度各种管理和维护任务

实际运行有时需要加上环境变量

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 root ping testlr.0jn1w0.dnslog.cn -c 1

在这里插入图片描述

注:crontab -l 看不到任务

三. /etc/cron.d/

这个目录用来存放任何要执行的crontab文件或脚本。
我们还可以把脚本放在/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly目录中,让它每小时/天/星期、月执行一次。

一般情况下我们添加计划任务时,都是直接修改/etc/crontab。但是,不建议,/etc/cron.d目录就是为了分用户、分项目设置计划任务而创建的。

例如,增加一项定时的备份任务,我们可以这样处理:在/etc/cron.d目录下新建文件crontabAdd,内容如下:

# m h dom mon dow user command

*/1 * * * * root test >> test.log

cron进程执行时,就会自动扫描该目录下的所有文件,按照文件中的时间设定执行后面的命令。

cron执行时,也就是要读取三个地方的配置文件:一是/etc/crontab,二是/etc/cron.d目录下的所有文件,三是每个用户的配置文件

需要加$PATH

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

* *     * * *     root  touch /tmp/ybb1.txt

总结:

在自己虚拟机上不加$PATH也能运行,但最好加上环境变量
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值