在Unix系統中Unix tar,充分利用Unix系統本身的命令tar、cpio和compress等來做到打包和壓縮,使之充當類似DOS下的壓縮軟件,同時在Unix系統中亦具有通用性。Unix tar的使用很有意義,我們今天就來講解下Unix tar的知識。
在Unix系統中,是先通過cpio或tar將眾多的文件打包成一個文件庫後,再用compress將文件庫壓縮來達到目的的。下面分別以cpio和tar來說明使用的方法和步驟。
Unix tar
1.Unix tar文件或目錄打包:
tar -cvf /u0/temp2.tar /usr/lib
將/usr/lib目錄下的文件與子目錄打包成一個文件庫為/u0/temp2.tar。
tar -cvf /u0/temp2.tar /usr/lib *.c *.f
將/usr/lib目錄下的*.c *.f等文件(不含子目錄)打包。
注意:如果指定文件如*.c *.f或*.*,則打包時均不含子目錄。如果指定為.或*,則含子目錄。
2.Unix tar壓縮:
同上:compress /u0/temp2.tar壓縮為/u0/temp2.tar.Z
3.Unix tar解壓:
uncompress /u0/temp2.tar.Z則還原為/u0/temp2.tar。
4.Unix tar解包展開:
tar -xvf /u0/temp2.tar
若以相對路徑打包的,解包時,以相對路徑存放展開的文件數據;若以絕對路徑打包的,解包時,以絕對路徑存放展開的文件數據。
若指定展開的文件名,須注意文件的目錄路徑。
5.顯示:
tar -tvf /u0/temp2.tar 顯示文件庫內的文件名稱。當指定文件名時,亦須注意文件的路徑。
相對來說這兩個命令各有優缺點。
1)tar速度比cpio慢,且不能跨越兩份存儲媒體,但文件格式幾乎在所有的Unix系統中都能通用,且使用簡便。
2)cpio則由於可通過管道功能,使得其打包時的文件選擇、排除功能非常強,且能跨越多份媒體,並能備份特殊的系統文件。
另外,壓縮命令compress比DOS下的Pkzip的壓縮率要低些。經測試,在一個目錄下527個文本文件共15.7MB,在Unix打包後用compress壓縮,大小為 2.1MB;相同的文件拷到DOS系統用Pkzip壓縮,則大小為1.4MB。補充:實際在UNIX下有zip,gzip等壓縮軟件,壓縮率比compress高,建議使用。
Unix tar的使用,我們就講解到這裡了。