Linux定时任务crontab

时间:2022-06-28 08:02:02
  1. 安装crontab(一般linux都是默认安装),crontabl -l (查看当前用户的定时计划任务 )查看crontab是否安装成功
  2. 检查crontab服务是否已经起来。执行service crond status
  3. demo:每分钟输出当前时间到文件/tmp/log.txt
//打开当前用户定时任务列表文件,进行编辑
crontab -e

//在最后一行插入内容,保存退出
*/1 * * * * date >> /tmp/log.txt

//监听log.txt文件内容,tail -f 可以实时的得到新追加到文件中的信息,常用来跟踪日志文件
tail -f /tmp/log.txt

Crontab的基本组成:crond(系统服务) + 配置文件 + 配置工具

配置文件格式:

Linux定时任务crontab
Linux定时任务crontab

配置工具:

crontab -help          //查看crontab命令帮助
crontab -e -u user1 //为用户user1创建crontab命令
crontab -l -u user1 //查看用户user1的crontab命令
tail -f /var/log/cron //查看生成的最终计划任务文件,即定时执行的内容

配置文件:

crontab配置文件:
1.用户的crontab定时任务保存文件:/var/spool/cron/用户,执行crontab -e 实际上是修改/var/spool/cron/用户 的内容。

2.全局(系统)配置文件:/etc/crontab,配置格式和上面的用户对应配置格式差不多,但是多了一个用户字段,这里是针对系统的,所以要指明是要哪个用户执行的。

3.在/etc/cron.d文件夹(可以认为是对系统配置的补充文)下面的sysstat件 ,打开可以看到和/var/spool/cron/用户 的配置文件*几乎*一样但是多了个用户字段,如果你直接修改该文件,执行crontab -l 两边是不一致的,执行crontab +文件名 时,直接用sysstat文件中的内容覆盖掉/var/spool/cron/用户的文件数据。

4./etc/cron.d文件夹下这些是系统的cron运行时自动加载的配置文件,在该目录下 *vi 用户定时文件*,配置定时任务。使用crontab -l只能查看存在于/var/spool/cron/用户的cron任务。也就是说能生效,但是用这条命令检查不到我刚配置的定时任务。

5.可以查看cron的日志文件 看cron执行结果 tail -f /var/log/cron