歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix資訊 >> 使用Unix操作系統打包命令

使用Unix操作系統打包命令

日期:2017/3/6 11:41:27   编辑:Unix資訊

我們在Unix操作系統業務使用(特別是數據管理與備份)中,經過一番研究、整理後,充分利用Unix操作系統本身的命令tar、cpio和compress等來做到打包和壓縮,使之充當類似DOS下的壓縮軟件,同時在Unix操作系統中亦具有通用性。

在Unix操作系統中,是先通過cpio或tar將眾多的文件打包成一個文件庫後,再用compress將文件庫壓縮來達到目的的。下面以cpio來說明使用的方法和步驟。

1.Unix操作系統文件或目錄打包。打包有如下多種情況:

A)含子目錄打包:

將/usr /lib目錄下的文件與子目錄打包成一個文件庫為/u0/temp1.cpio。若通過-o選項來打包整個目錄下的所有文件與子目錄,常先利用find目錄名-print來找出所有文件與子目錄的名稱,通過管道“|”傳給cpio打包。

B)不含子目錄的打包:

將/usr/lib目錄下的文件(不含子目錄下的文件)打包成一個文件庫為/u0/temp1.cpio。

C)特定文件打包:

可利用文本搜索命令grep與管道配合,可以排除或選擇特定類型的文件傳給cpio打包。意思均為找出/usr/lib目錄下以.c結尾的文件予以打包。
又如:ls /usr/lib|grep abcd|cpio -o〉/u0/temp1.cpio ,其意為找出/usr/lib目錄

下文件名中含有abcd字符的文件予以打包。

ls /usr/lib|grep -v abcd|cpio -o〉/u0/temp1.cpio,其意為找出/usr/lib目錄下文件名中不含 abcd 字符的文件予以打包。-v選項在grep命令中的意思是排除含有字符串的行。如此,可充分利用Unix操作系統的管道和一些命令的強大功能來實現文件的打包。

2.Unix操作系統壓縮:

文件打包完成後,即可用Unix操作系統中的compress命令(/usr/bin下)壓縮打包文件。對一般的文本文件,壓縮率較高,可達81%。
compress /u0/temp1.cpio則將文件庫/u0/temp1.cpio壓縮為/u0/temp1.cpio.Z(自動添加.Z並刪除/u0/temp1.cpio )。

3.Unix操作系統解壓:

uncompress /u0/temp1.cpio.Z則自動還原為/u0/temp1.cpio。

4.Unix操作系統解包展開:

將按原目錄結構解包展開到當前所在目錄下。若以相對路徑打包的,當解包展開時,也是以相對路徑存放展開的文件數據;若以絕對路徑打包的,當解包展開時,也是以絕對路徑存放展開的文件數據。因此注意若為相對路徑,應先進入相應的目錄下再展開。

cpio -id〈/u0/tmp1.cpio則將/u0/temp1.cpio解壓到/u1下(這裡假設temp1.cpio以相對路徑壓縮)。若加u選項,如cpio -iud〈/u0/temp1.cpio則文件若存在將被覆蓋,即強制覆蓋。

cpio -id〈/u0/temp1.cpio *.c 則展開其中的*.c文件,類似於DOS系統中的Pkzip軟件中Pkunzip -d temp1.zip解包功能。

5.Unix操作系統顯示:

cpio -it〈/u0/temp1.cpio [*.c] 顯示文件庫內的文件名稱,類似於DOS系統中的Pkzip 軟件中Pkunzip -vbnm temp1.zip功能。

關於Unix操作系統的打包的命令cpio我們就講到這裡,以後我們有機會的話會對另外一個命令來講解的。

Copyright © Linux教程網 All Rights Reserved