文档章节

linux下分卷压缩,合并解压的3种方法

henry-zhang
 henry-zhang
发布于 2015/09/18 17:22
字数 817
阅读 1956
收藏 7

我们上传东西的时候,由于文件过大而不能上传,或者不给上传,最明显的就是发邮件了,附件最大5M,有的10M。如果超过了就郁闷了。这个时候,如果能把压缩的东西,分割开来就比较爽了,windows下面我想大家知道怎么分割,利用winrar,winzip图型化设置压缩出来的块的大小。但是在linux下面有没有这样的方法了,linux下面有rar命令,有zip命令,windows下面这二种方式可以分割压缩,我想linux下面绝对也是可以的。下面是我尝试过程的记录:

一,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]

[zhangy@BlackGhost awksed]$ rar a -v5m google.rar Google_Maps_API.doc  //-v和5m之间不要有空格  
  
RAR 3.92   Copyright (c) 1993-2010 Alexander Roshal   10 Feb 2010  
Shareware version         Type RAR -? for help  
  
Evaluation copy. Please register.  
  
Creating archive google.rar  
  
Adding    Google_Maps_API.doc  
Calculating the control sum       
  
Creating archive google.part2.rar  
  
...       Google_Maps_API.doc  
Calculating the control sum       
  
Creating archive google.part3.rar  
  
...       Google_Maps_API.doc                                         OK  
Calculating the control sum  
Done  
[zhangy@BlackGhost awksed]$ unrar x google.part1.rar //合并并解压  
  
UNRAR 3.90 freeware      Copyright (c) 1993-2009 Alexander Roshal  
  
Extracting from google.part1.rar  
  
Extracting  Google_Maps_API.doc                                            
  
Extracting from google.part2.rar  
  
...         Google_Maps_API.doc                                       76%  
  
Extracting from google.part3.rar  
  
...         Google_Maps_API.doc                                       OK  
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)

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

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

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

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

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


本文转载自:

henry-zhang
粉丝 2
博文 62
码字总数 1431
作品 0
海淀
私信 提问
怎么从Linux服务器上下载超过4G的文件?

使用sz命令下载文件时,超过4G下载不了,如何下载呢? 本文介绍的方法是先对该文件进行拆分,拆分成多个小于4G的文件,然后分别下载,下载到本地后再进行合并或直接解压,具体操作如下: 1....

艾艾贴
2018/07/13
0
0
压缩软件--HaoZip

好压压缩软件(HaoZip)是强大的压缩文件管理器,是完全免费的新一代压缩软件,相比其它压缩软件占用更少的系统资源用,有更好的兼容性,压缩率比较高! 它提供了对ZIP、7Z和TAR文件的完整支持,能解...

匿名
2009/09/28
2.2K
0
好压V1.9 (Build 3942)正式版发布

好压压缩软件(HaoZip)的功能包括强力压缩、分卷、加密、自解压模块、智能图片转换、智能媒体文件合并等功能。完美支持鼠标拖放及外壳 扩展! 它能解压RAR、ACE、UUE、JAR、XPI、BZ2、BZIP2、...

小编辑
2010/04/08
215
1
WinRAR文件分卷压缩具体使用方法图文教程

WinRAR是很多电脑用户都在使用的一款文件压缩软件,今天,我们就一起来认识一下WinRAR的一个非常使用的功能:文件分卷压缩功能。那么,什么是文件分卷压缩功能,文件分卷压缩有什么用呢?文件...

guowang327
2018/06/29
0
0
Linux下的压缩和打包工具tar和7z

Linux下的压缩和打包工具tar和7z 在linux下面,有时候会碰到大量文件传输的问题,如果我们一个一个文件传输的话,不仅会给自己带来大量的重复工作,也会因为文件量总量大的原因浪费网络带宽,...

jackie8tao
2018/09/09
30
0

没有更多内容

加载失败,请刷新页面

加载更多

java通过ServerSocket与Socket实现通信

首先说一下ServerSocket与Socket. 1.ServerSocket ServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态. ServetSocket有三个构造方法: (1) ServerSocket(int port);...

Blueeeeeee
今天
6
0
用 Sphinx 搭建博客时,如何自定义插件?

之前有不少同学看过我的个人博客(http://python-online.cn),也根据我写的教程完成了自己个人站点的搭建。 点此:使用 Python 30分钟 教你快速搭建一个博客 为防有的同学不清楚 Sphinx ,这...

王炳明
昨天
5
0
黑客之道-40本书籍助你快速入门黑客技术免费下载

场景 黑客是一个中文词语,皆源自英文hacker,随着灰鸽子的出现,灰鸽子成为了很多假借黑客名义控制他人电脑的黑客技术,于是出现了“骇客”与"黑客"分家。2012年电影频道节目中心出品的电影...

badaoliumang
昨天
15
0
很遗憾,没有一篇文章能讲清楚线程的生命周期!

(手机横屏看源码更方便) 注:java源码分析部分如无特殊说明均基于 java8 版本。 简介 大家都知道线程是有生命周期,但是彤哥可以认真负责地告诉你网上几乎没有一篇文章讲得是完全正确的。 ...

彤哥读源码
昨天
16
0
jquery--DOM操作基础

本文转载于:专业的前端网站➭jquery--DOM操作基础 元素的访问 元素属性操作 获取:attr(name);$("#my").attr("src"); 设置:attr(name,value);$("#myImg").attr("src","images/1.jpg"); ......

前端老手
昨天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部