Linux计划任务及压缩归档(week2_day1)--技术流ken

Linux计划任务及压缩归档(week2_day1)--技术流ken,第1张

概述  计划任务介绍   我们可以通过一些设置。来让电脑定时提醒我们该做什么事了。或者我们提前设置好,告诉电脑你几点做什么几点做什么,这种我们就叫它定时任务。而遇到一些需要执行的事情或任务。我们也可以通过命令来告诉电脑一会临时把这个工作给做一下 总结:在我们LINUX中,我们可以通过crontab和at这两个东西来实现这些功能的 计划任务的作用:是做一些周期性的任务,在生产中的主要用来定期备份数据  

 

计划任务介绍

 

我们可以通过一些设置。来让电脑定时提醒我们该做什么事了。或者我们提前设置好,告诉电脑你几点做什么几点做什么,这种我们就叫它定时任务。而遇到一些需要执行的事情或任务。我们也可以通过命令来告诉电脑一会临时把这个工作给做一下

总结:在我们liNUX中,我们可以通过crontab和at这两个东西来实现这些功能的

计划任务的作用:是做一些周期性的任务,在生产中的主要用来定期备份数据

 

计划任务的安排方式分两种:

一种是定时性的,也就是例行。就是每隔一定的周期就要重复来做这个事情

一种是突发性的,就是这次做完了这个事,就没有下一次了,临时决定,只执行一次的任务

 

at和crontab这两个命令:

at:它是一个可以处理仅执行一次就结束的指令

crontab:它是会把你指定的工作或任务,比如:脚本等,按照你设定的周期一直循环执行下去

 

at一次性计划任务使用

 

at语法格式:at 时间

 

1. 下载at程序

[[email protected] ~]# yum install at -y

 

2. 启动atd服务

[[email protected] ~]# systemctl restart atd[[email protected] ~]# ps aux |  grep atdroot       1166  0.0  0.1  25904   944 ?        Ss   17:52   0:00 /usr/sbin/at -froot       1168  0.0  0.1 112704   956 pts/0    S+   17:52   0:00 grep --color=auto atd

 

3. 设置at计划任务

[[email protected] ~]# at 10:00                       #如果是上午时间,后面加上am,比如9:20amat> touch /tmp/test1                         #输入你要执行的命令at> <EOT>                                    #按ctrl+d保存job 1 at Fri Mar  1 10:00:00 2019[[email protected] ~]# at -l                          #查看计划任务1    Fri Mar  1 10:00:00 2019 a root[[email protected] ~]# atq                            #查看计划任务1    Fri Mar  1 10:00:00 2019 a root

 

4. 删除计划任务atrm

[[email protected] ~]# at -l                           #第一步查看计划任务,获取前面编号1    Fri Mar  1 10:00:00 2019 a root[[email protected] ~]# atrm 1                          #删除计划任务加上编号[[email protected] ~]# at -l                           #再次查看计划任务发现已经删除 

 

5. at计划任务的特殊写法

[[email protected] ~]# at 20:00 2018-10-1   在某天 [[email protected] ~]# at Now +10min   在 10分钟后执行[[email protected] ~]# at 17:00 tomorrow   明天下午5点执行[[email protected] ~]# at 6:00 pm +3 days   在3天以后的下午6点执行

 

crontab定时任务的使用

 

语法:#crontab -u  -e

         常用选项:

                  -lList,列出指定用户的计划任务列表

                  -eedit,编辑指定用户的计划任务列表

                  -uuser,指定的用户名,如果不指定,则表示当前用户

                  -rremove,删除指定用户的计划任务列表

 

1. 查看进程是否启动

[[email protected] ~]# ps aux | grep crondroot        621  0.0  0.3 126284  1600 ?        Ss   17:46   0:00 /usr/sbin/crond -nroot       1194  0.0  0.1 112704   956 pts/0    S+   18:05   0:00 grep --color=auto crond

 

2. 查看计划任务

[[email protected] ~]# crontab -lno crontab for root

 

3. 编写计划任务

计划任务的规则语法格式,以行为单位,一行为一个计划:

分 时 日 月 周 需要执行的命令

执行的命令建议写成绝对路径的格式!

 

例如:如果想要每天的00分执行reboot指令,则可以写成

0 0 * * * reboot

 

取值范围(常识):

分:0~59

时:0~23

日:1~31

月:1~12

周:0~707表示星期天

 

四个符号:

*:表示取值范围中的每一个数字

-:做连续区间表达式的,要想表示1~7,则可以写成:1-7

/:表示每多少个,例如:想每10分钟一次,则可以在分的位置写:*/10

,:表示多个取值,比如想在1点,26点执行,则可以在时的位置写:1,2,6

 

问题1:每月11022日的4:45重启network服务

45  4  1,10,22  *  *  systemctl restart network (每月,周没有制定)

 

问题2:每周六、周日的1:10重启network服务

10  1  *  *  6,7  systemctl restart network   (日、月没有指定)

 

问题3:每天18:0023:00之间每隔30分钟重启network服务

*/30  18-23  *  *  *  systemctl restart network  ( 日 月 周 没有指定)

 

问题4:每隔两天的上午8点到11点的第3和第15分钟执行一次重启

3,15  8-11  */2  *  *  reboot   (月和周没有指定)

 

案例:真实测试案例,每1分钟往root家目录中的ken.txt中输一个123,为了看到效果使用追加输出

 

[[email protected] ~]# crontab -e                    #编写计划任务* * * * * echo "123" >> /root/ken.txt       [[email protected] ~]# tail -f ken.txt               #查看计划任务执行结果123123

 

4. 删除计划任务

[[email protected] ~]# crontab -l* * * * * echo "123" >> /root/ken.txt[[email protected] ~]# crontab -r[[email protected] ~]# crontab -lno crontab for root

注意:在计划任务中,默认的最小单位就是分,不能再小了。

 

压缩归档

 

掌握归档的定义:归档(archiving)就是将许多文件(或目录)打包成一个文件。 了解归档的目的:归档的目的就是方便备份、还原及文件的传输 *** 作。  掌握tar命令的功能:将多个文件(也可能包括目录,因为目录本身也是文件)放在一起存放到一个磁带或磁盘归档文件中。并且将来可以根据需要只还原归档文件中的某些指定的文件。 掌握tar命令的常用选项: c:创建一个新的tar文件。 t:列出tar文件中目录的内容。 x:从tar文件中抽取文件。 f:指定归档文件或磁带(也可能是软盘)设备(一般都要选)。 v:显示所打包的文件的详细信息,v是verbose的第1个字母。 z:使用Gzip压缩算法来压缩打包后的文件。 j:使用bzip2压缩算法来压缩打包后的文件

 

常用选项组合:

压缩归档:czvf

解压:xzvf

 

1. 压缩归档

[[email protected] ~]# mkdir test[[email protected] ~]# cd test[[email protected] test]# touch {1..10}.txt[[email protected] test]# tar czvf test.tar.gz ./*./10.txt./1.txt./2.txt./3.txt./4.txt./5.txt./6.txt./7.txt./8.txt./9.txt[[email protected] test]# ls10.txt  2.txt  4.txt  6.txt  8.txt  test.tar.gz1.txt   3.txt  5.txt  7.txt  9.txt

 

2. 解压

[[email protected] test]# rm -rf {1..10}.txt[[email protected] test]# lstest.tar.gz[[email protected] test]# tar xzvf test.tar.gz ./10.txt./1.txt./2.txt./3.txt./4.txt./5.txt./6.txt./7.txt./8.txt./9.txt[[email protected] test]# ls10.txt  2.txt  4.txt  6.txt  8.txt  test.tar.gz1.txt   3.txt  5.txt  7.txt  9.txt

 

可以加上-C制定解压到那个目录

[[email protected] test]# tar xvf test.tar.gz -C /tmp./10.txt./1.txt./2.txt./3.txt./4.txt./5.txt./6.txt./7.txt./8.txt./9.txt[[email protected] test]# ls /tmp10.txt  2.txt  4.txt  6.txt  8.txt  ks-script-8jIJc_  yum.log1.txt   3.txt  5.txt  7.txt  9.txt  vmware-root
总结

以上是内存溢出为你收集整理的Linux计划任务及压缩归档(week2_day1)--技术流ken全部内容,希望文章能够帮你解决Linux计划任务及压缩归档(week2_day1)--技术流ken所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1031052.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存