Linux计划任务

计划任务:让计算机在指定的时间执行指定的事情,计划任务在Linux的体现住在分为at和crontab

at:通过at命令安排任务在某一时刻执行一次,用于调度临时性的一次性的任务

crontab:crontab可以达到at的效果,通过crontab命令,我们可以在固定的间隔时间执行指定的系统指令或shell script脚本(就是shell脚本).时间间隔单位可以是分钟,小时,日,月,周及以上的任意组合.这个命令非常适合周期性的日志分析或数据备份等工作.

查看是否安装 which crontab 我这显示已经安装

安装命令: yum -y install crontabs

检查crontab服务: systemctl status crond 我这显示已经运行1周3天

设置开机自启动 systemctl anable crond

查看在运行的crontab任务 crontab -l

Linux里经常有不同用户

crontab -u root -l 查看root用户的crontab(定时任务)服务

通过crontab添加的计划任务都会存储在/var/spool/cron/ 目录中

cat root 查看root用户的任务文件

crontab -e -u root 编辑root用户的任务文件 这条命令编辑的就是/var/spool/cron/ 存放的用户定时任务

cat /etc/crontab 查看配置文件可得知crontab的详细配置信息 第一个*代表什么 第二个*代表什么

就是 分 时 日 月 周 用户 要执行的任务

简单演示下 需求 每分钟清除 /usr/local/develop/test 目录里所有的.log后缀的文件

crontab -e

* * * * * find /usr/local/develop/test -name "*.log" -type f -exec rm '{}' \;

保存退出

crontab -l 查看

这样 /usr/local/develop/test里的.log文件会被定时清理

如果要删除该定时任务

crontab -e 编辑 把刚才那条命令删掉 保存就行了

或者前面加个 # 号注释掉

也可以

sudo rm /var/spool/cron/root 删除指定用户下的定时任务 /var/spool/cron是所有用户存放定时任务的目录

CronTriger-Cron触发器

Crontab讲解

1、contab

linux 系统由 cron (crond) 这个系统服务来控制的,crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,Linux 系统也提供了使用者控制计划任务的命令 :crontab 命令。

crontab文件的含义:

每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:

minute hour day month week command

其中:

minute: 表示分钟,可以是从0到59之间的任何整数。

hour:表示小时,可以是从0到23之间的任何整数。

day:表示日期,可以是从1到31之间的任何整数。

month:表示月份,可以是从1到12之间的任何整数。

week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。

command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。

相关推荐
Johny_Zhao24 分钟前
Docker + CentOS 部署 Zookeeper 集群 + Kubernetes Operator 自动化运维方案
linux·网络安全·docker·信息安全·zookeeper·kubernetes·云计算·系统运维
小毛驴8501 小时前
Linux 后台启动java jar 程序 nohup java -jar
java·linux·jar
一心0922 小时前
ubuntu 20.04.6 sudo 源码包在线升级到1.9.17p1
运维·ubuntu·sudo·漏洞升级
好好学习啊天天向上2 小时前
世上最全:ubuntu 上及天河超算上源码编译llvm遇到的坑,cmake,ninja完整过程
linux·运维·ubuntu·自动性能优化
你想考研啊2 小时前
三、jenkins使用tomcat部署项目
运维·tomcat·jenkins
tan180°3 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
代码老y3 小时前
Docker:容器化技术的基石与实践指南
运维·docker·容器
典学长编程3 小时前
Linux操作系统从入门到精通!第二天(命令行)
linux·运维·chrome
wuk9984 小时前
基于MATLAB编制的锂离子电池伪二维模型
linux·windows·github
你想考研啊6 小时前
四、jenkins自动构建和设置邮箱
运维·jenkins