一、系统延时任务设定

命令: at

at -l  列出任务号
at -c  n(任务号)    显示任务执行的命令   
at -r  n(任务号)    结束n延时任务

步骤:

at  时间
       干嘛
       ctrl+d 挂起任务,等待执行

例如:

  1. 开个终端监视 /mnt目录
  2. harmonyos 延时 延时n/a_harmonyos 延时

  3. 一分钟后在 /mnt,建立10个文件,file{1…10}
  4. harmonyos 延时 延时n/a_定时任务_02

    harmonyos 延时 延时n/a_临时文件_03

    harmonyos 延时 延时n/a_linux_04

  5. 显示9号延时任务的命令 :at -c 9
  6. harmonyos 延时 延时n/a_临时文件_05

  7. 一分钟后删除 /mnt 下所有文件
  8. harmonyos 延时 延时n/a_centos_06

harmonyos 延时 延时n/a_linux_07

二、延时任务的黑白名单设定

1、黑名单

配置文件 :vim /etc/at.deny ,将用户名写入,则该用户不能使用at命令。

harmonyos 延时 延时n/a_harmonyos 延时_08


westos/111/222用户不可以使用at。

harmonyos 延时 延时n/a_linux_09

2、白名单

配置文件 :vim /etc/at.allow ,该文件默认不存在,一旦建立,所有用户(除root用户)不可以使用at命令,黑名单文件/etc/at.deny 失效

用法与黑名单一致:将白名单用户放进/etc/at.allow,即可使用at命令。

三、用户级系统定时任务

1、定时任务工具:crontab

程序运行名:cornd.service 默认开机自启动

harmonyos 延时 延时n/a_centos_10

命令:

  1. crontab -e(编辑) -u(指定用户执行) 进入文件中进行编辑定时任务
  2. harmonyos 延时 延时n/a_linux_11

  3. crontab -r(删除) -u(指定用户执行) 删除指定用户所有定时任务
  4. harmonyos 延时 延时n/a_临时文件_12

  5. crontab -u(指定用户执行) -l 查看指定用户定时任务
  6. harmonyos 延时 延时n/a_linux_13

2、corntab时间表示方式

man 5 crontab ,查询写法

harmonyos 延时 延时n/a_临时文件_14

部分格式

含义

* * * * *

每分钟

*/2 * * * *

每隔2分钟

*/2 09-11 * * *

早上9-11点每俩分钟

*/2 */2 * * *

每隔俩小时俩分钟

*/2 09-11 * 1 5

一月的每周五的9-11点又俩分钟

*/2 09-17 1,15 3-5 5

3-5月的周五以及1号和15号的9点到17点每隔2分钟

注:指定的天和周是都算在内的(因为3月的1号不一定是周五)

harmonyos 延时 延时n/a_定时任务_15

编辑好的文档保存位置:

/var/spool/cron/username   ##任务保存文件位置

harmonyos 延时 延时n/a_定时任务_16

3、系统级别的cron(文件方式设定定时任务)

修改系统文件 /etc/cron.d/file

harmonyos 延时 延时n/a_harmonyos 延时_17

4、crontab的黑白名单

/etc/cron.deny 系统中默认存在,出现在此文件中的用户不能执行crontab
/etc/cron.allow 系统中默认不存在,文件出现后,出现在此文件中的普通用户不能执行crontab,只有root用户和出现在此文件中的用户可以执行

四、临时文件的管理

目的:设定定时任务对系统中的临时文件进行管理,清除系统中超过有效期的临时文件,释放系统的资源空间。

规则目录/usr/lib/tmpfiles.d目录中以.conf结尾,记录了临时文件的管理规范

使用命令

systemd-tmpfiles --create /usr/lib/tmpfiles.d/*  创建缓存 
systemd-tmpfiles --clean /usr/lib/tmpfiles.d/*   清除缓存

harmonyos 延时 延时n/a_linux_18