管理一次性计划任务

8.计划任务以及查找和处理文件 - 图1
结束交互式的使用ctril d
/etc/at.allow
admin #仅允许admin用户创建计划任务
/etc/at.deny
user1 #仅拒绝user1用户创建计划任务

at -l查看当前的计划任务

3 Sun Aug 1 10:00:00 2021 a root
4 Sun Aug 1 12:00:00 2021 a admin
第1列:该任务的编号
第2列:计划任务的执行的时间和日期
第3列:计划任务被排入默认队列a,-q指定队列a-z,从a到z优先级是从低到高
第4列:任务的拥有人

管理周期性的计划任务

crontab -e 编辑当前用户的计划任务
crontab -l列出当前用户的计划任务
crontab -r删除当前用户的所有计划任务
crontab -u管理其他用户的计划任务,一般和别的指令配合使用,比如crontab -u admin -l列出某个用户的计划任务。
8.计划任务以及查找和处理文件 - 图2
*号代表着每个的意思,比如每个月每天
一般日和星期不会同时写,因为时间很难同时匹配上
root用户的文件保存在/var/spool/cron/root下面,别的用户就是以用户命名。

管理计划任务

crontab -e 创建,修改和删除计划任务
crontab -l 列出计划任务
crontab -r 清空所有的计划任务
crontab -u admin -l 列出某个用户的计划任务
crontab -u admin -e 编辑某个用户的计划任务
计划任务保存在/var/spool/cron/username

14:30 -14:59 15:00- 15:30

30-59 14
0-30 15

0-30/2,31-59 echo hello

系统的计划任务

保存文件:

用户所有使用crontab创建的计划任务都保存在 /var/spool/cron中

监控计划任务的日志文件

tail -f /var/log/cron

crontab配置

vim /etc/crontab查看crontab配置,也可以在这里进行任务创建,普通用户一般用crontab -e创建任务
计划中的命令最好写绝对路径,因为PATH变量的原因
/etc/cron.d/*这个目录下的两个文件可以用来写计划任务。
/etc/cron.hourly 存放的是脚本,在每小时01分执行
/etc/cron.d/0hourly存放计划任务
01 * * * * root run-parts /etc/cron.hourly每小时的01分执行/etc/cron.hourly所有的脚本
其他的类型的脚本作用也类似

anacaron 针对周期比较长的,保证一定会执行一次

可在/etc/anacrontab查看配置
/etc/cron.daily每天都会执行的脚本
/etc/cron.monthly/每月都会执行的脚本
/etc/cron.weekly/每周都会执行的脚本

8.计划任务以及查找和处理文件 - 图3

查找和处理文件

locate工具

是基于数据库的查找,数据库得更新updatedb
是模糊查询,文件中路径有该字符串就会匹配
locate passwd查找用法
-i 忽略大小写 -n 查找匹配到的前n条记录

find工具

例子find /etc -name passwd后面为目录和属性
8.计划任务以及查找和处理文件 - 图4
1.根据文件名称查找
8.计划任务以及查找和处理文件 - 图5
2.根据目录层级查找
8.计划任务以及查找和处理文件 - 图6

3.根据文件的inode和连接查找
find / -inum
dd: device to device
if:input file
of:output
8.计划任务以及查找和处理文件 - 图7
8.计划任务以及查找和处理文件 - 图8
dd:dd 可从标准输入或文件中读取数据,根据指定的格式来转换数据,再输出到文件、设备或标准输出。
8.计划任务以及查找和处理文件 - 图9

find常用选项

image.png
image.png