cuixingwudi 2012-01-12
大家经常碰到在Linux下面解压大型的*.zip文件,一般常用winrar直接在smb中解压,但一般会存在解压解压时间长且有时候网络原因出错。所以特意查了一下Linux下面的解压工具。
1、Linux自带的unzip命令可以解压windows下的zip格式的压缩文件。
unzip命令
语法:unzip [选项] 压缩文件名.zip
各选项的含义分别为:
-x 文件列表 解压缩文件,但不包括指定的file文件。
-v 查看压缩文件目录,但不解压。
-t 测试文件有无损坏,但不解压。
-d 目录 把压缩文件解到指定目录下。
-z 只显示压缩文件的注解。
-n 不覆盖已经存在的文件。
-o 覆盖已存在的文件且不要求用户确认。
-j 不重建文档的目录结构,把所有文件解压到同一目录下。
例1:将压缩文件text.zip在当前目录下解压缩。
$ unzip test.zip
例2:将压缩文件text.zip在指定目录/tmp下解压缩,如果已有相同的文件存在,要求unzip命令不覆盖原先的文件。
$ unzip -n test.zip -d /tmp
例3:查看压缩文件目录,但不解压。
$ unzip -v test.zip
zgrep命令
这个命令的功能是在压缩文件中寻找匹配的正则表达式,用法和grep命令一样,只不过操作的对象是压缩文件。如果用户想看看在某个压缩文件中有没有某一句话,便可用zgrep命令。
2、tar命令使用
格式: tar [选项] [文件目录列表]
功能: 对文件目录进行打包备份
选项:
-c 建立新的归档文件
-r 向归档文件末尾追加文件
-x 从归档文件中解出文件
-O 将文件解开到标准输出
-v 处理过程中输出相关信息
-f 对普通文件操作
-z 调用gzip来压缩归档文件,与-x联用时调用gzip完成解压缩
-Z 调用compress来压缩归档文件,与-x联用时调用compress完成解压缩
例1:用tar打包一个目录下的文件:
tar -cf archive.tar foo bar # Create archive.tar from files foo and bar.
例2:列出*.tar包中所有文件
tar -tvf archive.tar # List all files in archive.tar verbosely.
例3:解压文件
tar -xf archive.tar # Extract all files from archive.tar.
例4:解压*.tar.bz2文件
tar -xjvf test.tar.bz2
例5:解压*.tar.gz文件
tar -xzvf test.tar.gz 或者 tar -xzvf test.tar.z
有时碰到tar 不支持-j 参数,可以如此使用:
bzip2 -d xxx.tar.bz2
tar xvf xxx.tar