Imported upstream version 1.5
[manpages-zh.git] / src / man1 / cpio.1
blob7d824c7e416996e7b962825c8510e83a5a381199
1 .TH CPIO 1L \" -*- nroff -*-
2 .SH NAME
3 cpio \- 存取归档包中的文件
4 .SH 总览 (SYNOPSIS)
5 .B cpio
6 {\-o|\-\-create} [\-0acvABLV] [\-C bytes] [\-H format] [\-M message]
7 [\-O [[user@]host:]archive] [\-F [[user@]host:]archive]
8 [\-\-file=[[user@]host:]archive] [\-\-format=format] [\-\-message=message]
9 [\-\-null] [\-\-reset-access-time] [\-\-verbose] [\-\-dot] [\-\-append]
10 [\-\-block-size=blocks] [\-\-dereference] [\-\-io-size=bytes] [\-\-quiet]
11 [\-\-force\-local] [\-\-help] [\-\-version] < name-list [> archive]
13 .B cpio
14 {\-i|\-\-extract} [\-bcdfmnrtsuvBSV] [\-C bytes] [\-E file] [\-H format]
15 [\-M message] [\-R [user][:.][group]] [\-I [[user@]host:]archive]
16 [\-F [[user@]host:]archive] [\-\-file=[[user@]host:]archive]
17 [\-\-make-directories] [\-\-nonmatching] [\-\-preserve-modification-time]
18 [\-\-numeric-uid-gid] [\-\-rename] [\-\-list] [\-\-swap-bytes] [\-\-swap] [\-\-dot]
19 [\-\-unconditional] [\-\-verbose] [\-\-block-size=blocks] [\-\-swap-halfwords]
20 [\-\-io-size=bytes] [\-\-pattern-file=file] [\-\-format=format]
21 [\-\-owner=[user][:.][group]] [\-\-no-preserve-owner] [\-\-message=message]
22 [\-\-force\-local] [\-\-no\-absolute\-filenames] [\-\-sparse] [\-\-only\-verify\-crc]
23 [\-\-quiet] [\-\-help] [\-\-version] [pattern...] [< archive]
25 .B cpio
26 {\-p|\-\-pass-through} [\-0adlmuvLV] [\-R [user][:.][group]]
27 [\-\-null] [\-\-reset-access-time] [\-\-make-directories] [\-\-link] [\-\-quiet]
28 [\-\-preserve-modification-time] [\-\-unconditional] [\-\-verbose] [\-\-dot]
29 [\-\-dereference] [\-\-owner=[user][:.][group]] [\-\-no-preserve-owner]
30 [\-\-sparse] [\-\-help] [\-\-version] destination-directory < name-list
32 .SH 描述 (DESCRIPTION)
33 本手册页 描述 GNU 版本 的
34 .BR cpio .
36 .B cpio
37 可以 从 cpio 或 tar 格式 的 归档包(archive) 中 读写 文件, 归档包 是 
38 一种文件, 它 由 归档文件 及其 相关信息 组成, 例如 文件名, 属主, 时标
39 (timestamp), 和 访问权限. 归档包 可以 是 磁盘上的 文件, 也可以 是 
40 磁带或管道.
42 .B cpio
43 有 三种 操作模式.
44 .PP
45 在 copy-out 模式中,
46 .B cpio
47 把 文件 复制到 归档包 中. 它 从 标准输入 读取 文件名列表, 每行一个文件名.
48 生成的 归档包 写到 标准输出. 产生 文件名列表 的 典型方法 是 使用
49 .B find
50 命令; 你 可能 要在
51 .B find
52 后面 用上 \-depth 选项, 减少 因为 进入 没有 访问权限 的 目录 引起 的 麻烦.
54 .PP
55 在 copy-in 模式中,
56 .B cpio
57 从 归档包 读取 文件, 或者 列出 归档包 的 内容, 归档包 来自 标准输入.
58 任何 非选项 命令行参数 被视为 shell 的 通配符模式串 (globbing pattern);
59 在 归档包 中, 只 读取 文件名 匹配 这些 模式串 的 文件.
60 和 shell 环境 不一样, 文件名 起始处 的 '.' 可以 匹配 模式串 
61 起始处 的 通配符, 文件名中 的 '/' 也可以 匹配 通配符. 如果 没有 给出 
62 模式串, 那么 读取 所有 文件.
64 .PP
65 在 copy-pass 模式中,
66 .B cpio
67 把 文件 从 一棵目录树 复制到 另一棵, 它 结合了 copy-in 和 copy-out 的 操作,
68 但是 没有 使用 归档包. 
69 .B cpio
70 从 标准输入 读取 欲复制的 文件名列表; 目标目录 是 非选项命令行参数.
72 .PP
73 .B cpio
74 支持 下列的 归档 格式:
75 binary, old ASCII, new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, 
76 和 POSIX.1 tar.  
78 "binary" 格式 是 过时 格式, 因为 它 保存 文件信息 的 方法 无法 应用在 
79 不同体系 的 机器 上.
80 "old ASCII" 格式 可以 跨平台 使用, 但是 不能 用于 超过 65536 个 i 节点 的
81 文件系统 中.
82 "new ASCII" 格式 可以 跨平台 使用, 也 适用于 任意大小 的 文件系统 上, 但
83 不是 所有 版本 的 
84 .BR cpio
85 都 支持, 目前 只有 GNU 和 System VR4 的 cpio 能够 支持 "new ASCII" 格式.
86 "crc" 格式 类似于 "new ASCII" 格式, 而且 对每个 文件 计算 校验和;
87 .B cpio
88 在 创建 归档包 时 计算 校验和, 解开 文件 时 进行 校验.
89 "HPUX" 格式 用于 兼容 HP UNIX 的 cpio, 它 用了 独特的方法 保存 设备文件.
91 .PP
92 "tar" 格式 用以 兼容 
93 .B tar
94 程序. 它 不能 对 文件名 超过 100 个 字符 的 文件 归档, 也 不能 对 特殊文件
95 (块设备 或 字符设备) 归档.
96 "POSIX.1 tar" 格式 不能 对 文件名 超过 255 个 字符 的 文件 归档 (小于 255,
97 除非 文件名 的 最右边 有一个 "/").
99 .PP
100 缺省情况下,
101 .B cpio
102 为了 兼容 老式的
103 .B cpio
104 程序, 创建 "binary" 格式 的 归档包.
105 当展开 归档包 时,
106 .B cpio
107 能够 自动识别 归档包 的 格式, 而且 能够 读取 不同 字节顺序 的 机器 上
108 创建 的 归档包.
111 .B cpio 
112 的 某些 选项 只能 用在 相应的 操作模式 上; 参见 总览 小节, 里面 列出了
113 什么模式 可以用 什么选项.
115 .SS 选项 (OPTIONS)
117 .I "\-0, \-\-null"
118 在 copy-out 和 copy-pass 模式中, 认为 输入的 文件名 以 null 字符 结尾, 
119 而不是 换行符, 这样 即使 文件名 中 包含 换行符, 也 不影响 归档. GNU
120 .B find
121 是 生成 null 结尾 文件名 列表 的 方法 之一.
124 .I "\-a, \-\-reset-access-time"
125 读取完 文件 后 重置 文件的访问时间, 这样 看上去 就象 没有 访问 过 这个 文件.
128 .I "\-A, \-\-append"
129 添加到 现存的 归档包 中. 仅用于 copy-out 模式. 该 归档包 必须是 用
130 .I \-O
132 .I "\-F (\-\-file)"
133 选项 生成的 磁盘文件.
136 .I "\-b, \-\-swap"
137 在 copy-in 模式中, 颠倒 数据中 字 的 字节 顺序. 相当于
138 .IR "\-sS" .
139 使用 这个 选项 可以 在 大端数 和 小端数 机器 之间 转换 32 位 整数.
142 .I "\-B"
143 把 I/O 块 大小 设置成 5120 字节. 最初的 块大小 是 512 字节.
146 .I "\-\-block-size=BLOCK-SIZE"
147 设置 I/O 块 大小 为 BLOCK-SIZE * 512 字节.
150 .I "\-c"
151 使用 老式的 跨平台 (ASCII) 归档 格式.
154 .I "\-C IO-SIZE, \-\-io-size=IO-SIZE"
155 设置 I/O 块 大小 为 IO-SIZE 字节.
158 .I "\-d, \-\-make-directories"
159 在 需要的地方 创建 起始目录.
162 .I "\-E FILE, \-\-pattern-file=FILE"
163 在 copy-in 模式中, 从 FILE 里 读取 用于 匹配 文件名 的 模式串. 
164 FILE 的 内容 如同
165 .BR cpio
166 的 非选项 参数.
169 .I "\-f, \-\-nonmatching"
170 只复制 那些 不匹配 给定的 模式串 的 文件.
173 .I "\-F, \-\-file=archive"
174 使用 归档包文件, 而不是 标准输入或输出. 如果 把 其他 机器上 的 磁带机
175 作成 归档包文件, 文件名 要用 "HOSTNAME:" 开始. 主机名 前面 可以 加上 用户名
176 和 一个 '@', 作为 访问 远程 磁带机 的 用户 (如果 你有 这样的 权限, 一般
177 在 用户的 ~/.rhosts 文件中 会有 这么 一项).
180 .I "\-\-force-local"
182 .IR \-F ,
183 .IR \-I ,
185 .IR \-O ,
186 一起用, 可以 把 归档包文件 看作 本地文件, 即使 文件名 中 含有 冒号,
187 一般说来 冒号 指出 一个 远程主机 的 存在.
190 .I "\-H FORMAT, \-\-format=FORMAT"
191 使用 归档格式 FORMAT. 有效 的 格式 列在 下面, 大小写 均可. "copy-in"
192 模式 的 缺省动作 是 自动检测 归档格式, "copy-out" 的 缺省格式 是 "bin".
195 .IP bin
196 老式的 binary 格式.
197 .IP odc
198 老式的 (POSIX.1) 跨平台 格式.
199 .IP newc
200 新型 (SVR4) 跨平台 格式, 支持 大于 65536 i节点 的 文件系统.
201 .IP crc
202 新型 (SVR4) 跨平台 格式, 并且 计算 校验和.
203 .IP tar
204 老式的 tar 格式.
205 .IP ustar
206 POSIX.1 tar 格式, 也能 识别 GNU 
207 .B tar
208 归档文件, 它们 相似 但不全相同.
209 .IP hpbin
210 HP UNIX 上的 cpio 使用的 老式的 binary 格式. (用 独特的方法 储存 设备文件)
211 .IP hpodc
212 HP UNIX 上的 cpio 使用的 跨平台 格式. (用 独特的方法 储存 设备文件)
215 .I "\-i, \-\-extract"
216 进入 copy-in 模式.
219 .I "\-I archive"
220 使用 归档包文件, 而不是 标准输入. 如果 把 其他 机器上 的 磁带机
221 作成 归档包文件, 文件名 要用 "HOSTNAME:" 开始. 主机名 前面 可以 加上 用户名
222 和 一个 '@', 作为 访问 远程 磁带机 的 用户 (如果 你有 这样的 权限, 一般
223 在 用户的 ~/.rhosts 文件中 会有 这么 一项).
225 .I \-k
226 无效操作; 只是 用来 兼容 其他 版本 的
227 .BR cpio .
230 .I "\-l, \-\-link"
231 如果有可能, 连接 文件, 而不是 复制.
233 .I "\-L, \-\-dereference"
234 解除 符号连接 的 关联 (复制 符号连接 指向的 文件, 而不是 连接 本身).
236 .I "\-m, \-\-preserve-modification-time"
237 当 创建 文件 时, 保留 以前的 文件修改时间.
239 .I "\-M MESSAGE, \-\-message=MESSAGE"
240 当 备份 媒体 (例如 磁带或软盘) 到达 卷尾时, 显示 一条 消息, 提醒 用户
241 插入 下一卷. 如果 MESSAGE 包含 字符串 "%d", 它 替换成 当前 卷号
242 (从 1 开始).
244 .I "\-n, \-\-numeric-uid-gid"
245 以 繁琐模式 (verbose) 显示 内容 时, 用 数字 显示 UID 和 GID, 而 不是 名称.
247 .I " \-\-no-absolute-filenames"
248 在 copy-in 模式中, 在 当前目录中 创建 所有 相关 文件, 即使 它们 在
249 归档包中 有 绝对路径名.
251 .I " \-\-no-preserve-owner"
252 在 copy-in 和 copy-pass 模式中, 不改变 文件 的 属主关系 (译注: 疑为不保留); 
253 使 它们 属于 展开 它们 的 用户. 这是 普通用户 的 缺省行为, 因此 System V
254 的 用户 不致于 无意中 把 文件 送人.
256 .I "\-o, \-\-create"
257 进入 copy-out 模式.
259 .I "\-O archive"
260 使用 归档包文件, 而不是 标准输出. 如果 把 其他 机器上 的 磁带机
261 作成 归档包文件, 文件名 要用 "HOSTNAME:" 开始. 主机名 前面 可以 加上 用户名
262 和 一个 '@', 作为 访问 远程 磁带机 的 用户 (如果 你有 这样的 权限, 一般
263 在 用户的 ~/.rhosts 文件中 会有 这么 一项).
266 .I " \-\-only-verify-crc"
267 当以 copy-in 模式 读入 CRC 格式 的 归档包 时, 不展开 里面的文件, 
268 只是 测试 文件的 CRC 码.
271 .I "\-p, \-\-pass-through"
272 进入 copy-pass 模式.
274 .I "\-\-quiet"
275 不显示 复制的 块数.
277 .I "\-r, \-\-rename"
278 交互式 文件 改名.
280 .I "\-R [user][:.][group], \-\-owner [user][:.][group]"
281 在 copy-out 和 copy-pass 模式中, 把 所有文件 的 属主 设置为 指定的
282 用户 和/或 用户组. 无论 用户 还是 用户组 都必须 存在. 如果 省略 用户组,
283 但却 给出了 分隔符 ":" 或 ".', 则 使用 该 用户 的 登录用户组. 只有
284 超级用户 能够 改变 文件的属主.
287 .I "\-\-sparse"
288 在 copy-out 和 copy-pass 模式中, 把 大块 数据0 的 文件 写成 稀疏文件 
289 (sparse file).
291 .I "\-s, \-\-swap-bytes"
292 在 copy-in 模式中, 交换 文件中 每一个 半字(字节对) 中的 字节.
294 .I "\-S, \-\-swap-halfwords"
295 在 copy-in 模式中, 交换 文件中 每一个 字(4字节) 中的 半字.
297 .I "\-t, \-\-list"
298 显示 输入(归档包) 的 内容.
300 .I "\-u, \-\-unconditional"
301 替换 所有 文件, 不再提问 是否 用 旧文件 替换 已经存在的 新文件.
303 .I "\-v, \-\-verbose"
304 列出 处理的文件, 加上
305 .IR \-t
306 选项 可以 列出 一个 'ls \-l' 风格的列表. 在一个 归档包 的 内容 详细列表
307 (verbose) 中, 如果 本地系统 不存在 归档文件的 用户和用户组 名称,
308 就用 其数字 UID和GID 对应于 本地系统的 用户和用户组 名称 代替.
311 .I "\-V \-\-dot"
312 每处理一个文件, 显示一个 ".".
314 .I "\-\-version"
315 显示
316 .B cpio
317 程序 的 版本号, 然后退出.
319 .SH "[中文版维护人]"
320 .B 徐明 <xuming@iname.com>
321 .SH "[中文版最新更新]"
322 .BR 2001/09/25
323 .SH "《中国Linux论坛man手册页翻译计划》"
324 .B http://cmpp.linuxforum.net