练习书写循环周期任务
首先,我们在前期连接好Xshell后,我们先需要在root用户下编写一个脚本test.sh,再设置循环周期任务。
编写一个test.sh脚本
[root@server ~]# vim test.sh
进入脚本,内容可以如下,也可以自行修改。
#!/bin/bash
while :
do
echon "this is my work sh"$(data) >> /root/work.txt
sleep
done
~
我们将前期完成后便可以完成以下练习。
1. 每分钟执行命令
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:* * * * * sh /root/test.sh
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误后,最后再编辑下一个周期任务。代码如下:
[root@server ~]# crontab -e
crontab: installing new crontab
[root@server ~]# crontab -l
* * * * * sh /root/test.sh
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
2. 每小时执行
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:0 * * * * sh /root/test.sh
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误后,最后再编辑下一个周期任务。代码如下:
[root@server ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@server ~]# crontab -l
0 * * * * sh /root/test.sh
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
3. 每天凌晨3点半和12点半执行脚本
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:30 3,12 * * * sh /root/test.sh
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误后,最后再编辑下一个周期任务。代码如下:
[root@server ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@server ~]# crontab -l
30 3,12 * * * sh /root/test.sh
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
4. 每隔6小时,相当于6,12,18,24点半执行脚本
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:30 */6 * * * sh /root/test.sh
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误后,最后再编辑下一个周期任务。代码如下:
[root@server ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@server ~]# crontab -l
30 */6 * * * sh /root/test.sh
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
5. 30代表半点,8-18/2表示早上8点到下午18点之间每隔2小时执行脚本
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:30 8-18/2 * * * sh /root/test.sh
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误后,最后再编辑下一个周期任务。代码如下:
[root@server ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@server ~]# crontab -l
30 8-18/2 * * * sh /root/test.sh
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
6. 每天晚上9点30重启nginx
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:30 21 * * * sh /root/test.sh restart nginx
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误后,最后再编辑下一个周期任务。代码如下:
[root@server ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@server ~]# crontab -l
30 21 * * * sh /root/test.sh restart nginx
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
7. 每月1和10号凌晨4点45执行脚本
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:45 4 1,10 * * sh /root/test.sh
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误后,最后再编辑下一个周期任务。代码如下:
[root@server ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@server ~]# crontab -l
45 4 1,10 * * sh /root/test.sh
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
8. 每周六和周日凌晨1点10分执行命令
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:10 1 * * 6,7 sh /root/test.sh
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误后,最后再编辑下一个周期任务。代码如下:
[root@server ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@server ~]# crontab -l
10 1 * * 6,7 sh /root/test.sh
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
9. 每天18点到23点之间,且每隔30分钟执行一次
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:30 18-23 * * * sh /root/test.sh
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误后,最后再编辑下一个周期任务。代码如下:
[root@server ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@server ~]# crontab -l
30 18-23 * * * sh /root/test.sh
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
10. 每隔一小时执行一次
先利用 crontab -e命令编辑定时任务;
再利用crontab -l查看当前所执行的周期性任务;
每分钟执行的命令为:0 */1 * * * sh /root/test.sh
再利用crontab -r命令将当前所执行的周期任务进行删除,再利用crontab -l查看当前是否还有在执行的周期任务,查看无误。代码如下:
[root@server ~]# crontab -e
no crontab for root - using an empty one
crontab: installing new crontab
[root@server ~]# crontab -l
0 */1 * * * sh /root/test.sh
[root@server ~]# crontab -r
[root@server ~]# crontab -l
no crontab for root
1790

被折叠的 条评论
为什么被折叠?



