diff --git "a/17\351\273\204\344\270\275\345\207\244/2024.06.14-\347\224\250\346\210\267\344\270\216\346\235\203\351\231\220.md" "b/17\351\273\204\344\270\275\345\207\244/2024.06.14-\347\224\250\346\210\267\344\270\216\346\235\203\351\231\220.md" index ca83d00d3ce9d7b6fbbe3c1e8d2155c70d256a73..8a626a22b51f5de5ae803ee76a2f3c9e04059064 100644 --- "a/17\351\273\204\344\270\275\345\207\244/2024.06.14-\347\224\250\346\210\267\344\270\216\346\235\203\351\231\220.md" +++ "b/17\351\273\204\344\270\275\345\207\244/2024.06.14-\347\224\250\346\210\267\344\270\216\346\235\203\351\231\220.md" @@ -195,6 +195,7 @@ https://www.runoob.com/linux/linux-file-attr-permission.html 7. 将上述的所有用户均要求加入到guanli组内 ``` + 前面没有创建guanli这个组,先创建guanli组,:groupadd guanli sudo usermod -aG guanli jerry sudo usermod -aG guanli kylin sudo usermod -aG guanli tsengia @@ -219,9 +220,9 @@ https://www.runoob.com/linux/linux-file-attr-permission.html 10. 将jerry用户锁定,并查看锁定状态 ``` - 锁定jerry用户:sudo passwd --lock jerry - 查看jerry用户的锁定状态:sudo passwd --status jerry - 解锁jerry用户:sudo passwd --unlock jerry + 锁定jerry用户:sudo passwd -l jerry + 查看jerry用户的锁定状态:sudo passwd -s jerry + 解锁jerry用户:sudo passwd -u jerry ``` 11. 打开两个xshell窗口,通过(who 或者 w)命令查看连接状态,并通过fuser杀掉其中一 diff --git "a/17\351\273\204\344\270\275\345\207\244/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\256\241\347\220\206\357\274\210\350\256\241\345\210\222\344\273\273\345\212\241\357\274\211.md" "b/17\351\273\204\344\270\275\345\207\244/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\256\241\347\220\206\357\274\210\350\256\241\345\210\222\344\273\273\345\212\241\357\274\211.md" new file mode 100644 index 0000000000000000000000000000000000000000..29aa418cecca833042015a5df8ac602e79c9080c --- /dev/null +++ "b/17\351\273\204\344\270\275\345\207\244/2024.06.15-\345\221\250\346\234\237\344\273\273\345\212\241\347\256\241\347\220\206\357\274\210\350\256\241\345\210\222\344\273\273\345\212\241\357\274\211.md" @@ -0,0 +1,175 @@ +## 周期任务管理(计划任务) + +任务计划有两种 + + 1. 在未来某个时间点执行一次某任务:用at + 2. 周期性执行某任务,用cron, + 1. cron可以让系统在指定时间执行某个指定的工作,使用crontab指令对用户使用定制任务管理 + +用户级:cd/var/spool/cron/crontabs #用户周期任务(root里) + +编辑系统级别的定时任务:vim/etc/crontab + +常用命令 + +​ crontab -l 查看当前任务 + +​ crontab -e 设置周期性任务 + +​ crontab -u 查看用户下的定制任务 + +​ crontab -r 删除任务 + +​ 查看当前状态 /etc/init.d/crond status + +​ 重启 /etc/init.d/crond/restart + +​ 每一项任务的执行在日志记录 /ver/log/cron + +设置规则 + +``` + * * * * * root 命令 + 分(m) 时(h) 日(dom) 月(mon) 星期(dow) 用户 命令 +* 星号是每的意思 +- 减号是连续一段时间,例如:0 17-19 * * * cmd #每天下午17点,18点,19点执行一次命令 +,逗号是多个时间段,例如:0 10,12 * * * cmd #每天上午10点,12点执行一次命令 +/n / 隔的意思,n代表数字,每隔n时间执行一次,例如:*/2 * * * * cmd #每隔2分钟执行一次命令 +``` + +执行周期设置说明 + +分钟 从0到59之间的数 + +小时 从0到23之间的数 + +日期 从1到31之间的数 + +月份 从1到12之间的数 + +星期 从0到7之间的数(0和7都代表7) + +### 分隔命令内容 + +在 *command* 字段中,可以使用换行符、或者 % 字符来分隔命令内容。 + +在第一个 % 之前的内容会传递给 shell 来执行,这个 % 自身会被替换成换行符,在 % 之后、直到行末的内容都作为标准输入传递。 + +如果需要提供 % 字符自身,需要用 `\%` 进行转义 + + + +### 周期任务练习 + +执行在家目录touch a.txt + +1. 每天3:00执行一次 + + ``` + 0 3 * * * /home/a.txt + ``` + +2. 每周六2:00执行 + + ``` + 0 2 * * 6 /home/a/txt + ``` + +3. 每周六1:05执行 + + ``` + 5 1 * * 6 /home/a.txt + ``` + +4. 每周六1:25执行 + + ``` + 25 1 * * 6 /home/a.txt + ``` + +5. 每天8:40执行 + + ``` + 40 8 * * * /home/a.txt + ``` + +6. 每天3:50执行 + + ``` + 50 3 * * * /home/a.txt + ``` + +7. 每周一到周五的3:40执行 + + ``` + 40 3 * * 1-5 /home/a.txt + ``` + +8. 每周一到周五的3:41开始,每10分钟执行一次 + + ``` + 41/10 3 * * 1-5 /home/a.txt + ``` + +9. 每天的10:31开始,每2小时执行一次 + + ``` + 31 10/2 * * * /home/a.txt + ``` + +10. 每周一到周三的9:30执行一次 + + ``` + 30 9 * * 1-3 /home/a.txt + ``` + +11. 每周一到周五的8:00,每周一到周五的9:00执行一次 + + ``` + 0 8,9 * * 1-5 /home/a.txt + ``` + +12. 每天的23:45分执行一次 + + ``` + 45 23 * * * /home/a.txt + +13. 每周三的23:45分执行一次 + + ``` + 45 23 * * 3 /home/a.txt + ``` + +14. 每周一到周五的9:25到11:35、13:00到15:00之间,每隔10分钟执行一次 + + ``` + 25/10 9-11,13-15 * * 1-5 /home/a.txt + ``` + +15. 每周一到周五的8:30、8:50、9:30、10:00、10:30、11:00、11:30、13:30、14:00、14:30、5:00分别执行一次 + + ``` + 30 8,9,10,11,13,14 * * 1-5 /home/a.txt + 50 8 * * 1-5 /home/a.txt + 0 5,10,11,14 * * 1-5 /home/a.txt + ``` + +16. 每天16:00、10:00执行一次 + + ``` + 0 10,16 * * * /home/a.txt + ``` + +17. 每天8:10、16:00、21:00分别执行一次 + + ``` + 10 8 * * * /home/a.txt + 0 16,21 * * * /home/a.txt + ``` + +18. 每天7:47、8:00分别执行一次 + + ``` + 47 7 * * * /home/a.txt + 0 8 * * * /home/a.txt + ```