码迷,mamicode.com
首页 > 其他好文 > 详细

压缩 & 解压缩 命令汇总:tar、zip & unzip、

时间:2016-08-19 00:53:00      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:

1. tar命令详解

    格式:tar [-cxtzjvfpPN] 文件与目录

  • -c: 建立压缩档案
  • -x:解压
  • -t:查看内容
  • -r:向压缩归档文件末尾追加文件
  • -u:更新原压缩包中的文件

    这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。

    下面的参数是根据需要在压缩或解压档案时可选的。

  • -z:有gzip属性的
  • -j:有bz2属性的
  • -Z:有compress属性的
  • -v:显示所有过程
  • -O:将文件解开到标准输出

    参数-f是必须的

    -f: 使用档案名字,切记,这个参数是最后一个参数,后面只能接档案名。

    # tar -cf all.tar *.jpg 这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包,-f指定包的文件名。
    # tar -rf all.tar *.gif 这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的意思。 
    # tar -uf all.tar logo.gif 这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。 
    # tar -tf all.tar 这条命令是列出all.tar包中所有文件,-t是列出文件的意思 
    # tar -xf all.tar 这条命令是解出all.tar包中所有文件,-x是解开的意思

    查看

    tar -tf aaa.tar.gz   在不解压的情况下查看压缩包的内容

    压缩

    tar –cvf jpg.tar *.jpg //将目录里所有jpg文件打包成tar.jpg

    tar –czf jpg.tar.gz *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用gzip压缩,生成一个gzip压缩过的包,命名为jpg.tar.gz

    tar –cjf jpg.tar.bz2 *.jpg //将目录里所有jpg文件打包成jpg.tar后,并且将其用bzip2压缩,生成一个bzip2压缩过的包,命名为jpg.tar.bz2

    tar –cZf jpg.tar.Z *.jpg   //将目录里所有jpg文件打包成jpg.tar后,并且将其用compress压缩,生成一个umcompress压缩过的包,命名为jpg.tar.Z

    解压

    tar –xvf file.tar //解压 tar包

    tar -xzvf file.tar.gz //解压tar.gz

    tar -xjvf file.tar.bz2   //解压 tar.bz2tar –xZvf file.tar.Z //解压tar.Z

    总结

  • *.tar 用 tar –xvf 解压
  • *.gz 用 gzip -d或者gunzip 解压
  • *.tar.gz和*.tgz 用 tar –xzf 解压
  • *.bz2 用 bzip2 -d或者用bunzip2 解压
  • *.tar.bz2用tar –xjf 解压
  • *.Z 用 uncompress 解压
  • *.tar.Z 用tar –xZf 解压

2. zip & unzip 命令详解

1) zip
    格 式:zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工 作目录>][-ll][-n <字 尾字符串>][-t <日 期时间>][-<压 缩效率>][压 缩文件][文件...][-i <范本样式>][-x <范本样式>]

    补充说明:zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具 有".zip"扩展名 的压缩文件。

    参  数:

  • -A 调 整可执行的自动解压缩文件。
  • -b<工作目录> 指 定暂时存放文件的目录。
  • -c 替 每个被压缩的文件加上注释。
  • -d 从 压缩文件内删除指定的文件。
  • -D 压 缩文件内不建立目录名称。
  • -f 此 参数的效果和指定"-u"参 数类似,但不仅更新既有文件,如果某些文件原本不存在于压缩文件内,使用本参数会一并将其加入压缩文件中。
  • -F 尝 试修复已损坏的压缩文件。
  • -g 将 文件压缩后附加在既有的压缩文件之后,而非另行建立新的压缩文件。
  • -h 在 线帮助。
  • -i<范本样式> 只 压缩符合条件的文件。
  • -j 只 保存文件名称及其内容,而不存放任何目录名称。
  • -J 删 除压缩文件前面不必要的数据。
  • -k 使 用MS-DOS兼容格 式的文件名称。
  • -l 压 缩文件时,把LF字符 置换成LF+CR字 符。
  • -ll 压 缩文件时,把LF+CR字 符置换成LF字符。
  • -L 显 示版权信息。
  • -m 将 文件压缩并加入压缩文件后,删除原始文件,即把文件移到压缩文件中。
  • -n<字尾字符串> 不 压缩具有特定字尾字符串的文件。
  • -o 以 压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同。
  • -q 不显 示指令执行过程。
  • -r 递 归处理,将指定目录下的所有文件和子目录一并处理。
  • -S 包 含系统和隐藏文件。
  • -t<日期时间> 把 压缩文件的日期设成指定的日期。
  • -T 检 查备份文件内的每个文件是否正确无误。
  • -u 更 换较新的文件到压缩文件内。
  • -v 显 示指令执行过程或显示版本信息。
  • -V 保 存VMS操作系统的文 件属性。
  • -w 在 文件名称里假如版本编号,本参数仅在VMS操 作系统下有效。
  • -x<范本样式> 压 缩时排除符合条件的文件。
  • -X 不 保存额外的文件属性。
  • -y 直 接保存符号连接,而非该连接所指向的文件,本参数仅在UNIX之 类的系统下有效。
  • -z 替 压缩文件加上注释。
  • -$ 保 存第一个被压缩文件所在磁盘的卷册名称。
  • -<压缩效率> 压 缩效率是一个介于1-9的 数值。

    例子
    例1. 压缩test.MYI
    [root@mysql test]# zip test1.zip test.MYI
    adding: test.MYI (deflated 42%)
    [root@mysql test]#ll
    -rw-r--r-- 1 root root 1033755 09-24 10:03 test1.zip
    压缩率为8的
    [root@mysql test]# zip test2.zip -8 test.MYI
    adding: test.MYI (deflated 42%)
    [root@mysql test]#ll
    -rw-r--r-- 1 root root 1033451 09-24 10:03 test2.zip

    例2. 将当前目录下的所有文件和文件夹全部压缩成test.zip文件,-r表示递归压缩子目录下所有文件
    [root@mysql test]# zip -r test.zip ./*
    打包目录
    [root@mysql test]# zip test2.zip test2/*

    例3. 删除压缩文件test1.zip中test.MYI文件
    [root@mysql test]# zip -d test1.zip test.MYI
    删除打包文件目录下的文件
    [root@mysql test]# zip -d test2.zip test2/ln.log
    deleting: tests/ln.log

    例4. 向压缩文件中test1.zip中添加test. MYI文件
    [root@mysql test]# zip -m test1.zip test. MYI

    例5. 压缩文件时排除某个文件
    [root@mysql test]# zip test3.zip tests/* -x tests/ln.log

 

 

2)unzip
    格 式:unzip [-cflptuvz][-agCjLMnoqsVX][-P <密 码>][.zip文 件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]
补充说明:unzip为.zip压缩文件的解压缩程序。
参  数:

  • -c 将 解压缩的结果显示到屏幕上,并对字符做适当的转换。
  • -f 更 新现有的文件。
  • -l 显 示压缩文件内所包含的文件。
  • -p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任 何的转换。
  • -t 检 查压缩文件是否正确。,但不解压。
  • -u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中 的其他文件解压缩到目录中。
  • -v 执 行是时显示详细的信息。或查看压缩文件目录,但不解压。
  • -z 仅 显示压缩文件的备注文字。
  • -a 对 文本文件进行必要的字符转换。
  • -b 不 要对文本文件进行字符转换。
  • -C 压 缩文件中的文件名称区分大小写。
  • -j 不 处理压缩文件中原有的目录路径。
  • -L 将 压缩文件中的全部文件名改为小写。
  • -M 将 输出结果送到more程 序处理。
  • -n 解 压缩时不要覆盖原有的文件。
  • -o 不 必先询问用户,unzip执 行后覆盖原有文件。
  • -P<密码> 使 用zip的密码选项。
  • -q 执 行时不显示任何信息。
  • -s 将 文件名中的空白字符转换为底线字符。
  • -V 保 留VMS的文件版本信 息。
  • -X 解 压缩时同时回存文件原来的UID/GID。
  • [.zip文件] 指定.zip压缩文件。
  • [文件] 指定 要处理.zip压缩文 件中的哪些文件。
  • -d<目录> 指 定文件解压缩后所要存储的目录。
  • -x<文件> 指 定不要处理.zip压 缩文件中的哪些文件。
  • -Z unzip -Z等 于执行zipinfo指 令。

    例1:将压缩文件text.zip在当前目录下解压缩。
    [root@mysql test]# unzip test.zip

    例2:将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件。
    [root@mysql test]# unzip -n test.zip -d /tmp

    例3:查看压缩文件目录,但不解压。
    [root@mysql test]# unzip -v test.zip

    例4:将压缩文件test.zip在指定目录tmp下解压缩,如果已有相同的文件存在,要求unzip命令覆盖原先的文件。
    [root@mysql test]# unzip -o test.zip -d tmp/

    使用
    unzip "*.zip"
    ls *.zip | xargs -n1 unzip
    解压当前目录下的所有zip文件

压缩 & 解压缩 命令汇总:tar、zip & unzip、

标签:

原文地址:http://www.cnblogs.com/zhuxiaohou110908/p/5785821.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!