Content-type: text/html
Manpage of CPIO
CPIO
Section: Misc. Reference Manual Pages (1L)
Index
Return to Main Contents
名称 (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/
Index
- 名称 (NAME)
-
- 总览 (SYNOPSIS)
-
- 描述 (DESCRIPTION)
-
- 选项 (OPTIONS)
-
- [中文版维护人]
-
- [中文版最新更新]
-
- 《中国Linux论坛man手册页翻译计划》
-
This document was created by
man2html,
using the manual pages.
Time: 14:43:26 GMT, April 08, 2001