查看visualization1.5.tar.gz 压缩包里面的内容:

$ tar -tf visualization1.5.tar.gz

解压指定文件JavascriptVisualRelease/BFS.html到/home目录下

$ tar -zxvf visualization1.5.tar.gz JavascriptVisualRelease/BFS.html -C /home/(错误)

$ tar -zxvf visualization1.5.tar.gz  -C /home/ JavascriptVisualRelease/BFS.html

解压指定文件JavascriptVisualRelease/BFS.html到当前目录JavascriptVisualRelease/下()

$ tar -zxvf visualization1.5.tar.gz JavascriptVisualRelease/BFS.html

向压缩文件包中追加文件

(如果文件已经归档且是是压缩文件,即压缩时使用了-cz选项),则无法追加文件,否则可以追加

$ tar -rvf test.tar.gz b.txt

一,rar分卷压缩和合并解压

rar -h

我们会发现以下参数,要创建多大的卷。

v             Create volumes with size autodetection or list all volumes
v<size>[k,b]  Create volumes with size=<size>*1000 [*1024, *1]

  1. [zhangy@BlackGhost awksed]$ rar a -v5m google.rar Google_Maps_API.doc  //-v和5m之间不要有空格
  2. RAR 3.92   Copyright (c) 1993-2010 Alexander Roshal   10 Feb 2010
  3. Shareware version         Type RAR -? for help
  4. Evaluation copy. Please register.
  5. Creating archive google.rar
  6. Adding    Google_Maps_API.doc
  7. Calculating the control sum
  8. Creating archive google.part2.rar
  9. ...       Google_Maps_API.doc
  10. Calculating the control sum
  11. Creating archive google.part3.rar
  12. ...       Google_Maps_API.doc                                         OK
  13. Calculating the control sum
  14. Done
  15. [zhangy@BlackGhost awksed]$ unrar x google.part1.rar //合并并解压
  16. UNRAR 3.90 freeware      Copyright (c) 1993-2009 Alexander Roshal
  17. Extracting from google.part1.rar
  18. Extracting  Google_Maps_API.doc
  19. Extracting from google.part2.rar
  20. ...         Google_Maps_API.doc                                       76%
  21. Extracting from google.part3.rar
  22. ...         Google_Maps_API.doc                                       OK
  23. All OK

二,zip分卷压缩和合并解压

zip -h2

你会发现,分卷参数-s,意思是说分割成多大的卷

Splits (archives created as a set of split files):
-s ssize  create split archive with splits of size ssize,where ssize nm
n number and m multiplier (kmgt, default m), 100k -> 100 kB

下面的意思是说如果是分卷的了,用 -s 0 --out把分卷合成一个

If input is split, output will default to same split size
Use -s=0 or -s- to turn off splitting to convert split to single file:
zip in_split_archive -s 0 --out out_single_file_archive

用zip来分卷压缩时,他必须是.zip的形势,他的流程是这样的,先把一般文件压缩成.zip的文件,然后在将.zip的文件分成多少块,如果你不这样坐呢,会提示错误的。

[zhangy@BlackGhost awksed]$ zip -s 4m Google_Maps_API.doc
zip error: Invalid command arguments (archive name must end in .zip for splits)

  1. [zhangy@BlackGhost awksed]$ zip google.zip Google_Maps_API.doc //先压缩不然就报上面的错
  2. adding: Google_Maps_API.doc(deflated 12%)
  3. [zhangy@BlackGhost awksed]$ zip -s 4m google.zip --out ziptest   //分卷
  4. copying: Google_Maps_API.doc
  5. [zhangy@BlackGhost awksed]$ zip ziptest -s 0 --out google_bak.zip  //这样合卷有问题  
  6. copying: Google_Maps_API.doc
  7. [zhangy@BlackGhost awksed]$ cat ziptest.z* > google_bak.zip //利用cat来合卷  (ubuntu上有问题)
  8. [zhangy@BlackGhost awksed]$ unzip google_bak.zip  //解压

上面呢用zip来分卷是没有问题的,但是合卷的时候就有问题了,zip -s 0 --out这样的方式,合出来的卷,大约只有分卷前的一半,这就搞的我很无语了,并且解压的时候,提示我输入密码,在次无语,只好有cat来合并了,还好合并后,解压没有任何问题。

步骤:

. 先将目录tmp2dir压缩成 tmp2dir.zip:
zip -re tmp2dir.zip tmp2dir . -s 32m设定分卷大小为32MB,将上一步压缩获得的文件tmp2dir.zip分卷成前缀为32test的分卷文件.
zip -s 32m tmp2dir.zip --out 32test 得到的分卷文件为:包括了总卷信息压缩文件32test.zip
32test.z01 32test.z03 32test.z05 32test.z07 32test.zip
32test.z02 32test.z04 32test.z06 32test.z08 . 将分卷压缩的文件集合32test*合并成Z32Test.zip
zip 32test -s --out Z32Test.zip
(ubuntu上使用 cat 32test.z* > Z32Test.zip 恢复得到的文件可能会有读取错误的)

三,利用split来分卷,cat来合并分卷

我花了很长时间去研究tar的参数,研究了好长时间,还是没有找到可以分卷的参数,英语还是不过关啊,唉。不过我们可以借助split来分卷

    1. [zhangy@BlackGhost awksed]$ tar czvf google.tar.gz Google_Maps_API.doc
    2. Google_Maps_API.doc
    3. [zhangy@BlackGhost awksed]$ split -d -b 4m google.tar.gz
    4. [zhangy@BlackGhost awksed]$ cat x* > google_bak.tar.gz
    5. [zhangy@BlackGhost awksed]$ tar zxvf google_bak.tar.gz
    6. Google_Maps_API.doc

tar压缩解压文件的更多相关文章

  1. Linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件到指定的目录?

    打包举例:将 /usr/local/src/zlib-1.2.5目录下的文件打包成 zlib-1.2.5.tar.gz cd /usr/local/src tar -czvf ./zlib-1.2.5 ...

  2. zip unzip tar 压缩解压

    yum install -y unzip zip    yum安装zip -r mydata.zip mydata    mydata目录压缩为mydata.zipunzip mydata.zip - ...

  3. 通过SharpZipLib来压缩解压文件

    在项目开发中,一些比较常用的功能就是压缩解压文件了,其实类似的方法有许多 ,现将通过第三方类库SharpZipLib来压缩解压文件的方法介绍如下,主要目的是方便以后自己阅读,当然可以帮到有需要的朋友更 ...

  4. Freebsd下压缩解压文件详解

    压缩篇: 把/usr/webgames目录下的文件打包.命名为bak.tar.gz 放到/usr/db-bak目录里 下面命令可以在任意目录执行.无视当前目录和将要存放文件的目录.tar -zcvf ...

  5. linux下tar压缩/解压的使用(tar) 压缩/解压

    压缩: tar  -zcvf   压缩后文件名.tar.gz   被压缩文件 解压: tar  -zxvf  被解压文件 具体的可以在linux环境下 用 tar --help 查看详细说明格式:ta ...

  6. 【转载】.NET压缩/解压文件/夹组件

    转自:http://www.cnblogs.com/asxinyu/archive/2013/03/05/2943696.html 阅读目录 1.前言 2.关于压缩格式和算法的基础 3.几种常见的.N ...

  7. linux命令tar压缩解压

    tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的 ...

  8. tar压缩/解压用法

    格式:tar zcvf 压缩后的路径及包名 你要压缩的文件 z:gzip压缩 c:创建压缩包 v:显示打包压缩解压过程 f:接着压缩 t:查看压缩包内容 x:解压 X:指定文件列表形式排除不需要打包压 ...

  9. tar 压缩解压命令详解

    tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的 ...

随机推荐

  1. 一、VScode构建.NET应用程序

    一.准备工具 1.安装.NET SDK(软件开发工具包) https://microsoft.com/net/core 2.安装VScode并安装 3.安装VS Code C# extension(即 ...

  2. LodopJS代码模版的加载和赋值

    Lodop模版有两种方法,一种是传统的JS语句,可以用JS方法里的eval来执行,一种是文档式模版,是特殊格式的base64码,此篇博文介绍JS模版的加载和赋值.两种模版都可以存入一下地方进行调用,比 ...

  3. Visual Studio常用插件整理

    Visual Studio Tools for Git       GIT代码管理工具 Resharper           代码生成工具 CSOutline2017      语法级别的代码折叠 ...

  4. How to helloworld on Xcode

    create a mac app,click button to change label text? create project,click left window button on Main. ...

  5. 原子变量与CAS算法(二)

    一.锁机制存在的问题 (1)在多线程竞争下,加锁.释放锁会导致比较多的上下文切换和调度延时,引起性能问题. (2)一个线程持有锁会导致其它所有需要此锁的线程挂起. (3)如果一个优先级高的线程等待一个 ...

  6. caffe网络中屏蔽某一层的输出Silence层

    屏蔽label输出 layer { name: "silence0" type: "Silence" bottom: "label" pha ...

  7. Nginx CGI反向代理对照

    陶辉104 CGI是什么? CGI全称是“通用网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具

  8. 如何下载旧版本的MySQL

    可能存在这样的场景,比如一些老系统需要使用MySQL 5.5版本才能运行,其余的不行. 1.登录下载站点 https://dev.mysql.com/downloads/mysql/ 此时的最新版本为 ...

  9. linux-shell系列4-init

    #!/bin/bash # 过滤出MAC地址MAC=`ifconfig |awk '{print $5}'|sed -n '1p;1q'` # 过滤网卡名字NET_NAME=`ifconfig |aw ...

  10. java zip API实现压缩和解压缩zip包

    package zip; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io ...