闹钟是我们经常会用到的工具,我们需要在某个具体的时间,被提醒去做具体的事。有时候又需要在具体的时间,能让PC自动地去完成某些工作。
比如:定时关机,定时休眠,每隔几分钟执行某个操作等
定时任务:
像闹钟一样,pc在约定的时间执行约定的操作
用法:
at time
任务
ctrl d
举例:
at 09:33
touch file{1..5}
ctrl d
###在9:33分,建立file1-file5,5个文件
at -l ####查看任务列表
at -c 任务号 ####查看任务内容
at -r 任务号 ####取消任务
延时任务:
这里我们需要了解一下crontab时间表示方式:
crontab命令常见于Unix和类Unix的操作系统之中,用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。
如何使用:
systemctl status crond.service ###查看延时服务状态【start开启】
crontab -e -u root ### 以root用户编辑延时任务
crontab -l -u root ### 查看已经设置的延时任务
crontab -r -u root ### 移除当前root身份的延时任务
vim /var/spool/cron/root ###编写延时任务文件
编写任务的时间格式:
* * * * * ###每分钟执行任务
*/2 * * * * ###每两分钟执行一次任务
*/2 09-17 * * * ###09-17点,每两分钟执行一次任务
*/2 09,17 * * * ###09点和17点,每两分钟执行一次任务
*/2 09-17 * * 5 ###每周周五9-17点每两分钟执行一次任务
*/2 09-17 1 3 4 ###3月的1号和每个周4,09-17点,每两分钟执行一次任务
使用示例:
有一些任务是系统设定每天都会去执行的,那这些任务是如何设置的呢?
系统每日执行任务:cd /etc/cron.d
在 /etc/cron.d 目录下,touch file ###编写定时任务
vim file
* * * * * username task
举例:* * * * * root touch /mnt/file
执行单个任务,直接执行
执行多个任务,先指定一个任务目录,然后在该目录写编写多个脚本任务
vim /etc/cron.d/file ###在etc/cron.d目录下创建系统执行任务文件
* * * * * root run-parts /mnt/xxx ###编写内容,设置要执行的目录和时间
cd /mnt/xxx ###切换到任务目录,在该目录下写多个任务脚本
vim a.sh
#!/bin/bash ###这是脚本的开头格式,后面接单个任务内容
vim b.sh
#!/bin/bash
vim c.sh
#!/bin/bash
以上就是定时任务/延时任务的一些常用用法了。
临时文件管理:
cd /usr/lib/tmpfiles.d/ ###在该目录下创建.conf文件
vim xyy.conf
d /mnt/aaa 777 root root 10s ###文件属性 【10秒保护期限】
systemd-tmpfiles --create /usr/lib/tmpfiles.d/* ###【*】可以换为xyy.conf,*指该目录下所有文件
cd /mnt/aaa
touch file
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*
###清理掉过了保护期限的所有文件【保护期内删不掉】
rm删除指令不受保护期限影响,即保护期内也可以删除
演示说明:
大大的小小阳