Unix系統(tǒng)中cpio知道講解
在DOS或Windows下,有各種壓縮與解壓縮工具軟件,其主要功能是將一目錄下的眾多文件或子目錄打包并壓縮成一個(gè)文件,便于備份、組織與管理。而在Unix系統(tǒng)中,卻無此類能打包并同時(shí)壓縮的工具。
在Unix系統(tǒng)中,充分利用Unix系統(tǒng)本身的命令tar、cpio和compress等來做到打包和壓縮,使之充當(dāng)類似DOS下的壓縮軟件,同時(shí)在Unix系統(tǒng)中亦具有通用性。
在Unix系統(tǒng)中,是先通過cpio或tar將眾多的文件打包成一個(gè)文件庫后,再用compress將文件庫壓縮來達(dá)到目的的。下面分別以cpio和tar來說明使用的方法和步驟。
一、Unix系統(tǒng)cpio
Unix系統(tǒng)壓縮:
文件打包完成后,即可用Unix中的compress命令(/usr/bin下)壓縮打包文件。對(duì)一般的文本文件,壓縮率較高,可達(dá)81%。
compress /u0/temp1.cpio則將文件庫/u0/temp1.cpio壓縮為/u0/temp1.cpio.Z(自動(dòng)添加.Z并刪除/u0/temp1.cpio )。
Unix系統(tǒng)解壓:
uncompress /u0/temp1.cpio.Z則自動(dòng)還原為/u0/temp1.cpio。
Unix系統(tǒng)解包展開:
將按原目錄結(jié)構(gòu)解包展開到當(dāng)前所在目錄下。若以相對(duì)路徑打包的,當(dāng)解包展開時(shí),也是以相對(duì)路徑存放展開的文件數(shù)據(jù);若以絕對(duì)路徑打包的,當(dāng)解包展開時(shí),也是以絕對(duì)路徑存放展開的文件數(shù)據(jù)。因此注意若為相對(duì)路徑,應(yīng)先進(jìn)入相應(yīng)的目錄下再展開。
cd /u1
cpio -id〈/u0/tmp1.cpio則將/u0/temp1.cpio解壓到/u1下(這里假設(shè)temp1.cpio以相對(duì)路徑壓縮)。
若加u選項(xiàng),如cpio -iud〈/u0/temp1.cpio則文件若存在將被覆蓋,即強(qiáng)制覆蓋。
cpio -id〈/u0/temp1.cpio *.c 則展開其中的*.c文件,類似于DOS系統(tǒng)中的Pkzip軟件中Pkunzip -d temp1.zip解包功能。
5.顯示:
cpio -it〈/u0/temp1.cpio [*.c] 顯示文件庫內(nèi)的文件名稱,類似于DOS系統(tǒng)中的Pkzip軟件中Pkunzip -vbnm temp1.zip功能。
Unix系統(tǒng)中,我們就關(guān)于cpio的知識(shí)就講解到這里。
【編輯推薦】