GB | BIG5
|
| 首頁 > 系統管理 > 其它 > 正文 |
 |
| 中文man手冊:cpio - 存取歸檔包中的文件 |
| 本文出自:http://www.cmpp.net/ 作者: (2001-09-17 09:00:00) |
CPIO
Section: Misc. Reference Manual Pages (1L)
名稱 (NAME)
cpio - 存取歸檔包中的文件
總覽 (SYNOPSIS)
cpio
{-o|--create} [-0acvABLV] [-C bytes] [-H format] [-M message]
[-O [[user@]host:]archive] [-F [[user@]host:]archive]
[--file=[[user@]host:]archive] [--format=format] [--message=message]
[--null] [--reset-access-time] [--verbose] [--dot] [--append]
[--block-size=blocks] [--dereference] [--io-size=bytes] [--quiet]
[--force-local] [--help] [--version] < name-list [> archive]
cpio
{-i|--extract} [-bcdfmnrtsuvBSV] [-C bytes] [-E file] [-H format]
[-M message] [-R [user][:.][group]] [-I [[user@]host:]archive]
[-F [[user@]host:]archive] [--file=[[user@]host:]archive]
[--make-directories] [--nonmatching] [--preserve-modification-time]
[--numeric-uid-gid] [--rename] [--list] [--swap-bytes] [--swap] [--dot]
[--unconditional] [--verbose] [--block-size=blocks] [--swap-halfwords]
[--io-size=bytes] [--pattern-file=file] [--format=format]
[--owner=[user][:.][group]] [--no-preserve-owner] [--message=message]
[--force-local] [--no-absolute-filenames] [--sparse] [--only-verify-crc]
[--quiet] [--help] [--version] [pattern...] [< archive]
cpio
{-p|--pass-through} [-0adlmuvLV] [-R [user][:.][group]]
[--null] [--reset-access-time] [--make-directories] [--link] [--quiet]
[--preserve-modification-time] [--unconditional] [--verbose] [--dot]
[--dereference] [--owner=[user][:.][group]] [--no-preserve-owner]
[--sparse] [--help] [--version] destination-directory < name-list
描述 (DESCRIPTION)
本手冊頁描述 GNU 版本的
cpio.
cpio
可以從 cpio 或 tar 格式的歸檔包中存入和讀取文件, 歸檔包是一種包含其他
文件和有關信息的文件。 有關信息包括:文件名, 屬主, 時標(timestamp),
和訪問權限. 歸檔包可以是磁盤上的 其他文件, 也可以是磁帶或管道.
cpio
有三種操作模式.
在 copy-out 模式中,
cpio
把文件復制到歸檔包中. 它從標準輸入獲得文件名列表 (一行一個),
把歸檔包寫到 標準輸出. 生成文件名列表的典型方法是使用
find
命令; 你可能要在
find
面用上 -depth 選項, 減少因為進入沒有訪問權限的目錄而引起的麻煩.
在 copy-in 模式中,
cpio
從歸檔包裡讀取文件, 或者列出歸檔包裡的內容. 它從標準輸入讀入
歸檔包. 任何不是選項的命令行參數被視為 shell的通配符模式串
(globbing pattern); 在歸檔包中, 只有文件名匹配這些模式串的文件
才能復制出來. 和 shell 中不一樣, 文件名 起始處的 '.' 可以匹配模式串
起始處的通配符, 文件名中的 '/' 也可以匹配通配符. 如果沒有給出
模式串, 那將讀出所有文件.
在 copy-pass 模式中,
cpio
把文件從一棵目錄樹復制到另一棵, 它結合了 copy-in 和 copy-out 的操作,
但不使用歸檔包.
cpio
從標準輸入讀取欲復制的文件名列表; 目標目錄作為非選項的命令行參數給出.
cpio
支持下列的歸檔格式:
binary, old ASCII, new ASCII, crc, HPUX binary, HPUX old ASCII, old tar,
和 POSIX.1 tar.
"binary"格式是過時格式, 因為它保存文件信息的方法無法應用在
不同體系的機器間移植.
"old ASCII" 格式可以跨平台使用, 但是不能用超過 65536 個 i 節點的
文件系統中.
"new ASCII" 格式可以跨平台使用, 也適用任意大小的文件系統, 但
不是所有版本的
cpio
都支持; 目前只有 GNU 和 System VR4 的 cpio 支持.
"crc" 格式 類似 "new ASCII" 格式, 同時對每個文件計算校驗和.
cpio
在創建歸檔包時算出校驗和, 解開文件時進行校驗.
"HPUX" 格式用兼容 HP UNIX 的 cpio, 它用了獨特的方法來保存設備文件.
"tar" 格式用以兼容
tar
程序. 它不能歸檔文件名超過 100 個字符的文件, 也不能歸檔特殊文件
(塊設備或字符設備).
"POSIX.1 tar" 格式不能歸檔文件名超過 255 個字符的文件(小, 除非
文件名的最右邊有一個 "/").
缺省情況下,
cpio
為了兼容老式的
cpio
程序, 創建 "binary" 格式的歸檔包.
當展開歸檔包時,
cpio
能夠自動識別歸檔包的格式, 而且可以讀取在其他字節順序的機器上
創建的歸檔包.
cpio
的某些選項只能用在對應的操作模式上; 參見總覽小節, 裡面列出了
什選項可以用在什模式上.
選項 (OPTIONS)
- -0, --null
-
在 copy-out 和 copy-pass 模式中, 認為輸入的文件名以 null字符結尾,
而不是換行符, 這樣即使文件名中包含換行符, 也不影響歸檔. GNU
find
是生成 null 結尾文件名列表的方法之一.
- -a, --reset-access-time
-
讀取完文件重置文件的訪問時間, 這樣看上去就象沒被訪問過一樣.
- -A, --append
-
追加到已經存在的歸檔包中. 僅用 copy-out 模式. 該歸檔包必須是用
-O
或
-F (--file)
選項指定的磁盤文件.
- -b, --swap
-
在 copy-in 模式中, 顛倒數據中字中的半字和半字中的字節順序. 相當
-sS.
使用這個選項,可以在大端數和小端數機器之間轉換 32 位整數.
- -B
-
把 I/O 塊大小設置成 5120 字節. 最初的塊大小是 512 字節.
- --block-size=BLOCK-SIZE
-
設置 I/O 塊 大小 為 BLOCK-SIZE * 512 字節.
- -c
-
使用老式的跨平台 (ASCII) 歸檔格式.
- -C IO-SIZE, --io-size=IO-SIZE
-
設置 I/O 塊大小為 IO-SIZE 字節.
- -d, --make-directories
-
在需要的地方創建開始目錄.
- -E FILE, --pattern-file=FILE
-
在 copy-in 模式中, 從 FILE 中讀取用匹配文件名的模式串.
FILE 中的內容就象
cpio
的非選項參數一樣看待.
- -f, --nonmatching
-
只復制那些不匹配任何給定的模式串的文件.
- -F, --file=archive
-
使用歸檔文件名, 而不是標準輸入或輸出. 如果把其他機器上的磁帶機
作成歸檔文件使用, 文件名要用 "HOSTNAME:" 開始. 主機名前面可以加上用戶名
和一個 '@', 作為訪問遠程磁帶機的用戶 (如果你有這樣的權限, 一般
在用戶的 ~/.rhosts 文件中會有這一項).
- --force-local
-
和
-F,
-I,
或
-O,
一起用, 即使文件名中含有一個冒號,也把歸檔文件看作本地文件,
一般說來冒號指出一個遠程主機名字.
- -H FORMAT, --format=FORMAT
-
使用歸檔格式 FORMAT. 有效的格式在下面列出, 大小寫均可. "copy-in"
模式的缺省動作是自動檢測歸檔格式, "copy-out" 的缺省格式是 "bin".
-
- bin
-
老式的 binary 格式.
- odc
-
老式的 (POSIX.1) 跨平台格式.
- newc
-
新型 (SVR4) 跨平台格式, 支持大 65536 i節點 的 文件系統.
- crc
-
新型 (SVR4) 跨平台格式, 並且計算校驗和.
- tar
-
老式的 tar 格式.
- ustar
-
POSIX.1 tar 格式, 也能識別 GNU
tar
歸檔文件, 它們相似但不全相同.
- hpbin
-
HP UNIX 上的 cpio 使用的老式的 binary 格式. (用獨特的方法儲存設備文件)
- hpodc
-
HP UNIX 上的 cpio 使用的跨平台格式. (用獨特的方法儲存設備文件)
- -i, --extract
-
進入 copy-in 模式.
- -I archive
-
使用歸檔文件名, 而不是標準輸入. 如果把其他機器上的磁帶機
作成歸檔文件, 文件名要用 "HOSTNAME:" 開始. 主機名前面可以加上用戶名
和一個 '@', 作為 訪問遠程 磁帶機的用戶 (如果你有這樣的權限, 一般
在用戶的 ~/.rhosts 文件中會有這一項).
- -k
-
無效操作; 只是用來兼容其他版本的
cpio.
- -l, --link
-
如果有可能, 連接文件, 而不是復制.
- -L, --dereference
-
解除符號連接的關聯 (復制符號連接指向的 文件, 而不是連接本身).
- -m, --preserve-modification-time
-
當創建文件時, 保留以前的文件修改時間.
- -M MESSAGE, --message=MESSAGE
-
當備份介質 (例如 磁帶或軟盤) 到達卷尾時, 顯示一條消息, 提醒用戶
插入下一卷. 如果 MESSAGE 包含字符串 "%d", 它被替換成當前卷號
(從 1 開始).
- -n, --numeric-uid-gid
-
以詳細方式 (verbose) 顯示內容時, 用數字顯示 UID 和 GID, 而不是
翻譯成名稱.
- --no-absolute-filenames
-
在 copy-in 模式中, 即使它們在歸檔包中有絕對路徑名.也在當前目錄中創建所有相關文件,
- --no-preserve-owner
-
在 copy-in 和 copy-pass 模式中, 不改變文件的屬主關系 (譯注: 疑為不保留);
使它們屬展開它們的用戶. 這是普通用戶的缺省行為, 因此 System V
的用戶不致無意中把文件泄露(give away).
- -o, --create
-
進入 copy-out 模式.
- -O archive
-
使用歸檔文件名, 而不是標準輸出. 如果把其他機器上的磁帶機
作成歸檔文件, 文件名要用 "HOSTNAME:" 開始. 主機名前面可以加上用戶名
和一個 '@', 作為訪問遠程磁帶機的用戶 (如果你有這樣的權限, 一般
在用戶的 ~/.rhosts 文件中會有這一項).
- --only-verify-crc
-
當在 copy-in 模式讀入 CRC 格式的歸檔包時, 不展開裡面的文件,
而只是測試文件的 CRC 碼.
- -p, --pass-through
-
進入 copy-pass 模式.
- --quiet
-
不顯示復制的塊數.
- -r, --rename
-
交互式文件改名.
- -R [user][:.][group], --owner [user][:.][group]
-
在 copy-out 和 copy-pass 模式中, 把所有文件的屬主設置為指定的
用戶和/或用戶組. 無論用戶還是用戶組都必須存在. 如果省略用戶組,
但是給出了分隔符 ":" 或 ".', 則使用給定用戶登錄時的用戶組. 只有
超級用戶能夠改變文件的屬主.
- --sparse
-
在 copy-out 和 copy-pass 模式中, 把大塊數據 0 的文件寫成稀疏文件
(sparse file).
- -s, --swap-bytes
-
在 copy-in 模式中, 交換文件中每一個半字(字節對) 中的字節.
- -S, --swap-halfwords
-
在 copy-in 模式中, 交換文件中每一個字(4字節) 中的半字.
- -t, --list
-
顯示輸入歸檔包的內容.
- -u, --unconditional
-
替換所有文件, 不再提問是否用舊文件替換已經存在的新文件.
- -v, --verbose
-
列出處理的文件, 加上
-t
選項可以列出一個 'ls -l' 風格的列表. 在一個歸檔包內容的詳細列表
(verbose) 中, 如果本地系統不存在歸檔文件的用戶和用戶組名稱, 它們將
被替換成其數字 UID和GID 對應本地系統的用戶和用戶組名稱.
- -V --dot
-
每處理一個文件, 顯示一個 ".".
- --version
-
顯示
cpio
程序的版本號, 然退出.
[中文版維護人]
徐明 Email: xuming@bigfoot.com
[中文版最新更新]
2001/2/11
《中國Linux論壇man手冊頁翻譯計劃》
www.linuxforum.net/man-pages/
(http://www.fanqiang.com)
進入【UNIX論壇】
|
|
| 相關文章 |
|
|
|
|
 |
★ 樊強制作 歡迎分享 ★ |