Manpages

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 格 式 的 歸 檔 包 (archive) 中 讀 寫 文 件 , 歸 檔 包 是 一 種 文 件 , 它 由 歸 檔 文 件 及 其 相 關 信 息 組 成 , 例 如 文 件 名 , 屬 主 , 時 標 (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 能 夠 支 持 "new ASCII" 格 式 . "crc" 格 式 類 似 於 "new ASCII" 格 式 , 而 且 對 每 個 文 件 計 算 校 驗 和 ; cpio 在 創 建 歸 檔 包 時 計 算 校 驗 和 , 解 開 文 件 時 進 行 校 驗 . "HPUX" 格 式 用 於 兼 容 HP UNIX 的 cpio, 它 用 了 獨 特 的 方 法 保 存 設 備 文 件 .

"tar" 格 式 用 以 兼 容 tar 程 序 . 它 不 能 對 文 件 名 超 過 100 個 字 符 的 文 件 歸 檔 , 也 不 能 對 特 殊 文 件 (塊 設 備 或 字 符 設 備 ) 歸 檔 . "POSIX.1 tar" 格 式 不 能 對 文 件 名 超 過 255 個 字 符 的 文 件 歸 檔 (小 於 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 的 用 戶 不 致 於 無 意 中 把 文 件 送 人 .

−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 程 序 的 版 本 號 , 然 後 退 出 .

[中 文 版 維 護 人 ]

徐 明 <xuming [AT] iname.com>

[中 文 版 最 新 更 新 ]

2001/09/25

《 中 國 Linux論 壇 man手 冊 頁 翻 譯 計 劃 》

http://cmpp.linuxforum.net

本 頁 面 中 文 版 由 中 文 man 手 冊 頁 計 劃 提 供 。
中 文 man 手 冊 頁 計 劃 : https://github.com/man-pages-zh/manpages-zh

COMMENTS