天天看點

我使用過的Linux指令之uncompress - 解壓.Z檔案我使用過的Linux指令之uncompress - 解壓.Z檔案

我使用過的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包在第四章CD光牒中。

[[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指令系列總目錄

繼續閱讀