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:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。

相关推荐
zfxwasaboy25 分钟前
DRM KMS 子系统(4)Planes/Encoder/Connector
linux·c语言
暮色_年华1 小时前
随想 2:对比 linux内核侵入式链表和 STL 非侵入链表
linux·c++·链表
好学且牛逼的马1 小时前
【工具配置|docker】
运维·docker·容器
dnncool1 小时前
【Linux】操作系统发展
linux
文言一心1 小时前
LINUX离线升级 Python 至 3.11.9 操作手册
linux·运维·python
北邮刘老师2 小时前
A3C Network:智能体互联网的层次化视图
运维·服务器·网络
XRJ040618xrj2 小时前
如何在Linux中根据物理网卡建立虚拟网卡
linux·服务器·网络
空中楼阁,梦幻泡影3 小时前
LoRA 详细解析,使用LoRA 方式对模型进行微调详细操作指南
运维·服务器·人工智能·机器学习·语言模型
码农水水3 小时前
蚂蚁Java面试被问:混沌工程在分布式系统中的应用
java·linux·开发语言·面试·职场和发展·php