我使用过的Linux命令之uncompress - 解压.Z文件
本文链接:http://codingstandards.iteye.com/blog/790830 (转载请注明出处)
用途说明
compress命令是用来将文件压缩成.Z格式的,对应的uncompress是用来解压的。Compress reduces the size of the named files using adaptive Lempel-Ziv coding. Whenever possible, each file is replaced by one with the extension .Z, while keeping the same ownership modes, access and modification times.
这个命令使用的算法因为不够先进,在Linux下现在都采用gzip和gunzip来压缩和解压了。但是很多老的压缩文件可能是.z格式的,因此需要用到它。一般情况下,安装好的Linux系统下可能没有这个命令,那么就需要到安装盘中找到包含ncompress字符串的rpm包来进行安装。这也是网上很多人问“在LINUX 中没有COMPRESS这个命令”或“为什么linux中的compress不能用”的原因了。
常用参数
因为compress和uncompress并不常用,因此参数并不太重要了,在需要时man一下就清楚了。
使用示例
示例一 压缩文件
[[email protected] ~]# ls -l install.log
-rw-r--r-- 1 root root 48038 10月 8 17:18 install.log
[[email protected] ~]# compress install.log
[[email protected] ~]# ls -l install.log install.log.Z
ls: install.log: 没有那个文件或目录
-rw-r--r-- 1 root root 17034 10月 8 17:18 install.log.Z
[[email protected] ~]#
示例二 解压.Z文件
[[email protected] ss7linux]# uncompress dpklnx6.Z
-bash: uncompress: command not found
[[email protected] ss7linux]# cd /software/
[[email protected] software]# ls
disc1 disc2 disc3 disc4 ss7
[[email protected] software]# find . -name "ncompress*"
./disc4/RedHat/RPMS/ncompress-4.2.4-40.i386.rpm
[[email protected] software]# rpm -ivh ./disc4/RedHat/RPMS/ncompress-4.2.4-40.i386.rpm
warning: ./disc4/RedHat/RPMS/ncompress-4.2.4-40.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
Preparing... ########################################### [100%]
1:ncompress ########################################### [100%]
[[email protected] software]# cd /root/setup/ss7linux/
[[email protected] ss7linux]# uncompress dpklnx6.Z
<!-- [if gte mso 9]><xml><w:WordDocument><w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel><w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery><w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery><w:DocumentKind>DocumentNotSpecified</w:DocumentKind><w:DrawingGridVerticalSpacing>7.8</w:DrawingGridVerticalSpacing><w:View>Normal</w:View><w:Compatibility></w:Compatibility><w:Zoom>0</w:Zoom></w:WordDocument></xml><![endif]-->
[[email protected] ss7linux]# ls
dpklnx6
示例三 在CentOS4.8下安装ncompress
CentOS4.8的ncompress包在第四章光盘中。
[[email protected] media]# pwd
/media
[[email protected] media]# mount /dev/cdrom
mount: block device /dev/hdc is write-protected, mounting read-only
[[email protected] media]# cd cdrom/
[[email protected] cdrom]# find . -name "ncompress*.rpm"
./CentOS/RPMS/ncompress-4.2.4-44.rhel4.i386.rpm
[[email protected] cdrom]# rpm -ivh ./CentOS/RPMS/ncompress-4.2.4-44.rhel4.i386.rpm
警告:./CentOS/RPMS/ncompress-4.2.4-44.rhel4.i386.rpm: V3 DSA 簽章:NOKEY, key ID 443e1821
準備中... ########################################### [100%]
1:ncompress ########################################### [100%]
[[email protected] cdrom]# cd ..
[[email protected] media]# umount /dev/cdrom
问题思考
1. compress和uncompress使用的压缩算法的大体原理如何?
2. 是比较各种压缩工具(compress、gzip、bzip2、tar、rar等)的效率、压缩比率?
相关资料
【1】中国IT实验室 Linux 指令篇:编码压缩打包--compress
【2】鳥哥的 Linux 私房菜 第九章、檔案與檔案系統的壓縮與打包
返回 我使用过的Linux命令系列总目录