系统管理员工具包: 移动 UNIX 目录
2008-11-12 08:30:33 来源:WEB开发网要从 cpio 存档中提取,可以使用 i 命令行选项。您还应该使用 d 选项确保重新创建那些在存档中存在、而在目标结构中不存在的目录。同时使用这两个选项,您可以将文件从一个目录复制到另一个目录,如清单 13 所示。
清单 13. 同时使用 i 和 d 选项
$ find . |cpio -ov |(cd /tmp/mc; cpio -idv)
.
./.bash_aliases
./.bash_history
./.bash_path
./.bash_profile
./.bash_vars
./.bashrc
./xmlsimple.pl
./rest.xml
46 blocks
.
.bash_aliases
.bash_history
.bash_path
.bash_profile
.bash_vars
.bashrc
xmlsimple.pl
rest.xml
46 blocks
因为在这个命令的两个部分中都使用了详细模式,所以可以确认创建的和提取的存档的大小是否相同。在本示例中,这两项操作都使用了 46 个块。
请注意,如果目标中的文件具有相同的、或更新的修改时间,那么 cpio 不会覆盖这些文件。
通过网络进行复制
在 UNIX 中通过网络传输文件的常用方法是使用网络文件系统 (NFS) 装入远程目录,然后进行与本地目录之间的复制。这是一种比较简单的解决方案,但对于各种各样的情况,它并不总是可行的或实用的。
通过网络复制文件的最简单的方法之一是使用 tar 或 cpio 创建存档文件,然后可以通过网络传输这个存档文件。这种方法具有一些优点,比如可以自由选择如何以及何时进行文件的复制,但它也有一些缺点,包括复制过程的复杂性,以及在源系统中创建存档和将该存档复制到目标系统时保存完整的重复文件的磁盘空间需求。
正如您所看到的,创建存档非常简单:
更多精彩
赞助商链接