• tar -- 打包压缩文件


    先看一个例子:

    1.将当前目录下所有.txt文件打包并压缩归档到文件this.tar.gz,我们可以使用

    tar zcvf this.tar.gz ./*.txt

    2.将当前目录下的this.tar.gz中的文件解压到当前目录我们可以使用
    tar xzvf this.tar.gz ./
     
    下面介绍几个重要的参数:
    (一)打包部分参数
         tar [-] A --catenate --concatenate | c --create | d --diff --compare | --delete | r --append | t --list | --test-label | u --update | x
             --extract --get [options] [pathname ...]
         Main operation mode:
    I.创建tar
         -c, --create
               create a new archive
    1 #tar -cf target.tar file1 file2 ...
    2 创建之后还可以用 -A -r 参数进行添加
    3 --delete 参数进行删除

    II.添加或删除

         -A, --catenate, --concatenate
               append tar files to an archive
         -r, --append
               append files to the end of an archive
         --delete
               delete from the archive (not on mag tapes!)


    1 #tar -Af target.tar source1.tar source2.tar ...        添加其他 打包文件到一个打包文件中
    2 #tar -rf target.tar file1 file2 ...            添加其他文件到一个打包文件中
    3 #tar -f target.tar --delete file1 file2 ...        把一个文件从一个打包文件中删除

     
    III.查看
        -d, --diff, --compare
               find differences between archive and file system
         -t, --list     这是个很有用的选项
               list the contents of an archive

         -u, --update  这也是个很有用的选项
               only append files newer than copy in archive
    1 #tar -tf target.tar         查看打包文件中的内容
    2 #tar -df target.tar file     
    3 #tar -uf target.tar file1 file2 ...         更新打包文件中的内容

    IV.解开

        既然有打包必然有解开
         -x, --extract, --get
               extract files from an archive
    1 #tar -xf target.tar

    (二)压缩参数

    指定使用哪种压缩算法的参数

         -j, --bzip2
         -z, --gzip, --gunzip --ungzip
         -Z, --compress, --uncompress

    (三)其他

         -v, --verbose
               verbosely list files processed
    这个参数相当与把过程展示给你看

    (四)常见组合
    针对一下的格式便产生了一些组合

    1 #tar -zcvf  target.tar.gz  /dir                  打包后以gzip压缩
    2 #tar -jcvf target.tar.gz /dir                    打包后以bzip2压缩
    3 
    4 将 -c 参数换成 -x 参数就变为解压缩
    5 
    6 #tar -zcvf  target.tar.gz  /dir                  gzip解压缩
    7 #tar -jcvf target.tar.gz /dir                    bzip2解压缩
    [root@linux ~]# tar -cvf /tmp/etc.tar /etc <==仅打包,不压缩!
    [root@linux ~]# tar -zcvf /tmp/etc.tar.gz /etc <==打包后,以 gzip 压缩
    [root@linux ~]# tar -jcvf /tmp/etc.tar.bz2 /etc <==打包后,以 bzip2 压缩
    # 特别注意,在参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。
    # 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar file ~
    # 如果加 j 参数,则以 .tar.bz2 来作为附档名啊~
    # 上述指令在执行的时候,会显示一个警告讯息:
    # 『tar: Removing leading `/' from member names』那是关於绝对路径的特殊设定。


  • 相关阅读:
    使用yum命令报错
    CentOS6.8安装Python3.6.3
    解决 linux 下安装 node 报: command not found
    Python的pip源切换为国内阿里云镜像
    开源Java加密工具Jasypt 1.4发布
    JavaFX对Java开发者到底意味着什么?
    16 个印象深刻的 HTML5/CSS3/JavaScript 体验
    高效的Java异常处理
    Java开发的学习过历程
    Java中23种设计模式详解
  • 原文地址:https://www.cnblogs.com/IceSword-syy/p/3935583.html
Copyright © 2020-2023  润新知