Linux的例行性工作

root@server \~#watch -n 1 ls /tmp #实时监控tmp,每1s刷新

root@server \~#dnf provides /bin/at #查询安装at服务后的包名

一、单一执行的例行性任务--at

root@server \~# dnf install at -y #安装at服务

root@server \~# systemctl start atd #开启atd服务

root@server \~# systemctl enable --now atd # 设置立即开机启动

root@server \~# systemctl status atd # 查看atd服务状态

at命令(at -参数 日期时间)

-m:当任务完成后,即使没有标准输出,也会给用户发送邮件

-l:查看所有用户的at任务

-d:删除任务

-v:使用时间格式列出任务

-c:列出任务之后的命令内容

-f:读取文件

#点击ctrl+d 结束交互性界面

root@server \~# echo "echo 'hello again' >> at.txt" | at now +1 minute #通过管道符执行命令

at.allow(白名单):写在该文件中用户才可执行at命令,可以无视黑名单

at.deny(黑名单):写在该文件中的用户不能使用at命令

若at.allow和at.deny都不存在则只有root用户可以使用at命令

二、循环执行的例行性任务--crontab

crontab -参数

-l:查看任务

-e:编辑任务(编写任务时写绝对路径)

-i:删除任务

-r:删除任务

-u:执行任务,指定用户

root@server \~#crontab -u root -e #指定root用户执行命令

cron.d # 系统定时任务

cron.daily # 每天的任务

cront.deny # 定时任务黑名单

cron.hourly # 每小时执行的任务

cron.monthly # 每月的定时任务

crontab # 定义任务管理文件

cron.weekly # 每周的定时任务

练习

  1. 在4月份的周一到周三的上午11点执行脚本

0 11 * 4 1-3 /usr/bash xxxx

  1. 每天早上7点到上午11点且每2小时执行一次

0 7-11/2 * * *

  1. 每天6点执行脚本

0 6 * * *

  1. 每周六凌晨4点执行

0 4 * * 6

  1. 每周六凌晨4点05执行

5 4 * * 6

  1. 每天8:40执行

40 8 * * *

  1. 在每天10:31且每隔2小时执行一次

31 10/2 * * *

  1. 每周一到周五2:00执行

0 2 * * 1-5

  1. 每周一到周五8:00和9:00执行

0 8,9 * * 1-5

  1. 每天10:00,16:00执行

0 10,16 * * *

相关推荐
小白的码BUG之路6 小时前
linux -- ssh两台机器相连
运维·服务器·ssh
缓慢更新8 小时前
表单引擎的存储建模:宽表与文档库的取舍
运维·服务器·网络·数据库·低代码·oracle·适配器模式
续写烂尾8 小时前
贴片 SD NAND、eMMC、TF 卡规格怎么定?硬件工程师选型清单
运维·服务器·网络
不昀8 小时前
网口Link Up后仍然掉线,怎样区分物理链路和数据通路问题?
linux·以太网
迪康妍妍8 小时前
终端管控实操:封堵网盘与IM外发通道的落地思路
运维·网络·安全·架构·安全性测试
sxgzzn8 小时前
如何选择合适的开关柜在线监测工具?
运维·重构·无人机·开关柜局放在线监测·光伏运维管理系统
科技小E8 小时前
监控设备品牌杂乱无法互通?EasyGBS打通孤岛,统一汇聚视频
服务器·网络·音视频
Lhan.zzZ9 小时前
Qt WebEngineView 在 Linux 上无法加载网页:从“看不见 HTML“到“禁用沙箱“
linux·c++·qt
zxcvb1539 小时前
运维经验分享:监控网页更新内容的几种思路
运维
Fcy64810 小时前
Linux下 多路转接select详解
linux·select·多路转接