java压缩和解压tar包,tar包、压缩与解压缩

在Unix下常遇到一些解包、压包的问题。一般情况下将若干文件或文件夹打成tar包,是为了便于文件的传输和管理。例如,通过FTP从Unix平台下载目录结构较多的文件夹到Windows平台或另外一Unix平台,虽然文件夹不是太大,但由于每个文件很小,且非常多,每个文件都要进行文件头、尾检查校验。下载速度会非常慢。如果打成tar包,传输就会快很多。存档的文件夹打成tar包也容易管理。

值得注意的是:tar文件只是将文件或文件夹打包,并没有进行压缩。如果文本文件较多,对其压缩会节省很大的磁盘空间,传输将更快。压缩和解压缩方法可以参考下文给出的示例。

下面我以Sun Solaris 5.8(其他unix如linux、aix大体相同)为例,就常见的一些问题向各位同仁作一下介绍,供大家在工作中参考。因水平有限,仅做抛砖引玉,欢迎大家积极补充。

1、如何解开.tgz或.tar.gz文件?

2、如何解开.z或.Z文件?

3、如何解开.tar.Z文件?

4、如何安装、卸载、列出rpm包信息?(linux常用)

5、如何使用tar命令测试、展开、生成tgz包?

6、如何解开和生成tar文件?

7、如何象在PC上的ARJ那样的分解打包软件?

8、在Unix下如何压缩文件?

9、如何解开和生成其他包如.jar文件?

10、抛砖引玉,待同仁补充

============================================================

1、如何才能解开.tgz或.tar.gz文件?

1)方法一:

gzip -d filename.tar.gz 或 gzip -d filename.tgz

tar -xvf filename.tar

2)方法二:

解压并列表:

gzip -dc filename.tgz | tar xvf -           #解.tgz文件

gzip -dc filename.tar.gz | tar xvf -        #.tar.gz 同 .tgz文件

只列表不生成文件:

gzip -dc filename.tgz | tar tvf -           #解.tgz文件

gzip -dc filename.tar.gz | tar tvf -        #.tar.gz 同 .tgz文件

gzip的其他使用方法参见gzip -h

============================================================

2、如何才能解开.z或.Z文件?

1)解.z 文件: gzcat filename.z

2)解.Z 文件:uncompress -c filename.Z

============================================================

3、如何解.tar.Z文件?

1)解压并列表:

zcat filename.tar.Z | tar xvf -            #解.tar.Z文件

uncompress -c tast.tar.Z | xvf -           #uncompress -c 同 zcat

2)只列表不生成文件:

zcat filename.tar.Z | tar tvf -             #解.tar.Z文件

uncompress -c filename.tar.Z | tvf -        #uncompress -c 同 zcat

============================================================

4、如何安装、卸载、列出rpm包信息?(linux常用)

1)安装rpm包时显示进度,例如:用-vh参数,如rpm -ivh ipchains-1.3.6-1.i386.rpm

2)直接通过ftp来安装rpm包,例如:rpm -i

3)校验所有的rpm包,查找丢失的文件,例如:rpm –Va

4)查找一个文件属于哪个rpm包,例如:rpm -qf /usr/bin/who

5)列出一个rpm包的描述信息,例如:rpm -qpi mon-0.37j-1.i386.rpm

6)列出一个rpm包的文件信息,例如:rpm -qpl mon-0.37j-1.i386.rpm

7)列出并过滤已经安装的包,例如:rpm –q |grep IBM

8)删除已安装的包,例如:rpm –e 包名

9)其他rpm操作参见 # rpm --help

============================================================

5、如何使用tar命令测试、展开、生成tgz包?

tar zvfx filename.tgz                       #在当前目录下展开这个包

tar zvft filename.tgz                       #只测试不展开

tar zvfx filename.tgz -C /new-dir           #展开后放到/new-dir目录下

tar zvfc filename.tgz /filename             #把/filename目录下所有的文件及子目录打包成filename.tgz

============================================================

6、如何解开和生成tar文件?

tar xvf filename.tar                              #当先目录解包

tar tvf filename.tar                              #只显示不生成文件

tar cvf filename.tar           #生成包

tar的参数很多,要仔细学习参见#tar -h

============================================================

7、如何象在PC上的ARJ那样的分解打包软件?

# split -b 100k big.file

将big.file分解成若干500K的小文件 (名为xa, xb, xc, ...)

# split -l 500 big.file

将big.file分解成每个500 lines的小文件

其它使用方法参见split –h

============================================================

8、在Unix下如何压缩文件?

在unix下压缩方法有多种,可以参见gzip、gunzip、zcat、compress等工具文档,也可以参见上面所述的一些方法。下面仅以compress命令示例:

例如:需要将/filename的文件打包并压缩,需要做以下步骤:

1)打包

tar cvf filename.tar ./dir

2)压缩

compress filename.tar #生成filename.tar.Z文件

如果还原回原来的目录结构

1)解压缩

uncompress filename.tar.Z

3)解tar包

tar xvf filename.tar

如果unix命令参数不熟悉,一般也可以通过ftp将压缩或打包文件传到PC上,利用Windows下的Winzip或rar等压缩工具解开。

==========================================================

9、如何解开和生成其他包如.jar文件?

在unix上生成和解开jar包和对tar包的操作差不多。

例如:

jar cvf filename.jar /dirname    #将/dirname 打成jar包

jar xvf filename.jar             #解开jar包

jar tvf filename.jar             #只列表不解开jar包

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值