linux 提取cpio cpio命令

2021-10-13 08:21:10 字數 1412 閱讀 5882

cpio是用來建立、還原備份檔的工具程式,它可以加入、解開cpio或tar備份檔內.cpio 可以從 cpio 或 tar 格式的歸檔包中存入和讀取檔案, 歸檔包是一種包含其他檔案和有關資訊的檔案。 有關資訊包括:檔名, 屬主, 時標(timestamp), 和訪問許可權。 歸檔包可以是磁碟上的 其他檔案, 也可以是磁帶或管道。

語法:cpio [主選項] [選項] [檔名]

cpio包括3種執行模式。

copy-ou: cpio把要備份的檔案複製到歸檔包中。

copy-in:cpio從歸檔包中抽取檔案,或者列出歸檔包裡的內容。

pass-through:合併copy-out和copy-in命令的功能。從乙個目錄向另乙個目錄或從乙個檔案系統向另乙個檔案系統複製檔案。

主引數:

-o 或 --create 執行copy-out模式,建立備份檔

-i 或 --extract執行copy-in模式,還原備份檔。

-p 或 --pass-through 執行 pass-through模式,略過備份步驟,直接將檔案複製到目的目

錄 。-t 或 --list 將輸入的內容呈現出來。

-v 詳細顯示指令的執行過程。

例:一、把pic目錄下的所有檔案並歸檔到 a.cpio中

find pic | cpio -ovb > a.cpio

二、把a.cpio解壓到abc目錄中。

linux@server:~/ex$ mkdir abc

linux@server:~/ex$ cd abc

linux@server:~/ex/abc$ cpio -i < /home/linux/ex/a.cpio

三、顯示cpio文件的內容,而不提取其內容。

cpio -vt < a.cpio

# v顯示詳細資訊,t顯示其內容,但不解壓。

四、壓縮cpio歸檔檔案

經常看到***x.tar.gz的壓縮檔案,此類檔案利用 gzip壓縮的,也有***.cpio.gz的壓縮檔案也是由gzip進行壓縮的,gzip不能對目錄檔案進行壓縮,必須先用tar或cpio把多個目錄和檔案歸檔,之後再進行壓縮。

linux@server:~/ex$ gzip a.cpio  #建立壓縮

linux@server:~/ex$ ls

abc  a.cpio.gz  pic   #生成了a.cpio.gz

五、將當前目錄下的pic目錄樹,備份到backup目錄中

kdir backup  #建立這個目錄

find pic | cpio -vpd backup

#v 詳細資訊,p pass-through模式,直接複製,d用於建立子目錄

注:1、cpio產生歸檔檔案的內容列表一般是ls,find命令的執行結果作為管道輸入。

2、cpio的引數必須指定乙個主選項(o,i,p,t),告訴cpio具體做什麼。

linux映象提取

如果你是乙個喜歡編譯核心的狂人,同時也是經常忘記將預設的.config檔案備份的懶傢伙,那麼下面的方法將會使你 的核心配置工作變得更輕鬆,從linux 2.6開始核心提供了一種將.config附加到映像檔案的方法,通過這種方法,核心 配置者可以不必備份當前的.config檔案,而是在需要的時候直接從...

Linux 資料提取

有時候我們需要從檔案裡提取資料,當然也可能是老闆甩過來乙個檔案讓你把裡面的 和郵箱全部提取,這時候一條一條的複製貼上總是太麻煩,這個時候我們就需要利用一些命令和正規表示式在linux系統中自動提取出來。1.提取data2檔案中的數字開頭的行,並把他們寫入 home root num中。2.提取dat...

linux核心鍊錶提取

list.h ifndef if list define if list define list head init x list head x define list head init static x static list head init x struct list head typed...