linux压缩打包与定时任务

 

一、linux中常见的压缩包有哪些

      在Windows中,常见的压缩包有zip,rar压缩包等

      在linux中同样也有压缩包,常见的便是gzip压缩包与bzip2压缩包

 

 

 

 

二、gizp与b/zip2的压缩与解压

    gizp压缩工具

      压缩软件命令:gzip file(被压缩文件)

      解压软件命令:gzip -d packages(压缩包)

      注意:使用gzip压缩文件后会将原文件删除,如果想保留原文件则可以使用-c选项将压缩过程产生的标准输出写入一个新的文件中,示例如下:>的作用是覆盖内容,>>的作用是追加内容

    bzip压缩工具

      压缩软件命令:bzip2 file(被压缩文件)

      解压软件命令:bzip2 -d packages(压缩包)

      注意:解压时如果原文件已存在则会报错,因此最好先将原文件删除

 

 

 

 

 

 

 

 

三、tar命令

    在linux中,gzip和bzip2都不能压缩目录,这时候我们就可以使用tar命令,tar本身是一个打包的命令,加上其它参数就可以做到很多功能

 

 

 

      命令格式:

        tar  [参数] [被打包后的名字] [压缩包或被压缩文件]

            - f :指定打包的包名称

            -c : 打包

            -v :显示打包的过程

            -z :使用gzip工具压缩

 

 

 

            -j :使用bzip2工具压缩

 

 

 

            -x :解压

 

 

            -t :查看压缩包的全部内容

 

 

 

            -P:忽略使用绝对路径时报出的错误

        PS: 1.  保持压缩与解压的路径一致,尽量不要使用绝对路径进行压缩,系统会报错,但还是会压缩成功,可以使用-P参数忽略报错

             2. -f 参数后面跟的一定是被打包后的名字

 

 

 

 

 

 

 

四、crontab命令

    Linux crontab是用来定期执行程序的命令。

    当安装完成操作系统之后,默认便会启动此任务调度命令。

    crond 命令每分锺会定期检查是否有要执行的工作,如果有要执行的工作便会自动执行该工作。

    

    命令格式:

      crontab [参数]

      参数:

        -e:执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe)

        -l: 列出目前的定时任务

        -r:删除目前的定时任务

    时间格式

      * * * * *

 

 

     

      在以上各个字段中,还可以使用以下特殊字符:

      "*"代表所有的取值范围内的数字,如月份字段为*,则表示1到12个月;

      "/"代表每一定时间间隔的意思,如分钟字段为*/10,表示每10分钟执行1次。

      "-"代表从某个区间范围,是闭区间。如“2-5”表示“2,3,4,5”,小时字段中0-23/2表示在0~23点范围内每2个小时执行一次。

      ","分散的数字(不一定连续),如1,2,3,4,7,9。

      注:由于各个地方每周第一天不一样,因此Sunday=0(第一天)或Sunday=7(最后1天)。

    实例

        ①每一分钟执行一次 /bin/ls:* * * * * /bin/ls

        ②在 12 月内, 每天的早上 6 点到 12 点,每隔 3 个小时 0 分钟执行一次 /usr/bin/backup:0 6-12/3 * 12 * /usr/bin/backup

        ③周一到周五每天下午 5:00 寄一封信给 alex@domain.name:  00 17 * * 1-5 mail -s "hi" alex@domain.name < /tmp/maildata

        ④每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分....执行 echo "haha":20 0,2,4 * * * echo "haha"

    crontab -e 添加定时任务原理

        我们通过查看 /var/spool/cron/用户名文件,可以发现我们使用命令crontab -e 编辑的定时任务就储存在这个文件里

        所以通过编辑该文件我们同样可以做到添加定时任务

 

 

         

        并且通过切换另一个用户使用crontab -l 命令查看定时任务发现,每一个用户的定时任务是相互隔离的

        但是在/var/spool/cron目录下都能看到各个以用户名命名的定时任务文件

 

 

 

 

 

 

    定时任务服务运行记录日志文件

        定时任务的日志文件位置:/var/log/cron

        查看日志时常用的命令:

            1.head (默认查看头部10行)

              -n 在n后面添加增加数字设置查看几行

            2. tail (默认查看尾部10行)

              -n 在n后面添加增加数字设置查看几行

              -f 实时监控文件的变化

            3.less 类似于vim的方式查看文件

 

 

posted @ 2021-12-17 15:37  椰子皮0oo0  阅读(380)  评论(0)    收藏  举报
1