WEB开发网
开发学院操作系统Linux/Unix 系统管理员工具包: 移动 UNIX 目录 阅读

系统管理员工具包: 移动 UNIX 目录

 2008-11-12 08:30:33 来源:WEB开发网   
核心提示: 清单 9. 使用 p 选项$ tar cpf - .|(cd /tmp/mc; tar xvpf -)最后,您还可以通过扩展这个命令的后半部分(请参见清单 10),系统管理员工具包: 移动 UNIX 目录(4),创建一个新的目录作为复制这些文件的目标, 清单 10. 创建一个新的目录作为复

清单 9. 使用 p 选项

$ tar cpf - .|(cd /tmp/mc; tar xvpf -)

最后,您还可以通过扩展这个命令的后半部分(请参见清单 10),创建一个新的目录作为复制这些文件的目标。

清单 10. 创建一个新的目录作为复制文件的目标

$ tar cpf - .|(mkdir /tmp/mc; cd /tmp/mc; tar xvpf -)

就其本身而言,tar 是一种非常有用的工具,可用于复制文件和目录结构。然而,当您使用它通过网络来复制文件时,才能真正体现出它的价值。在研究这种诀窍之前,先来使用另一种存档工具 cpio,这也是一种基本的处理方法。

使用 cpio

cpio 工具类似于 tar 工具,但是除了接受指定的文件或目录之外,您必须为它提供一个文件列表。如果您只希望复制特定的文件,那么这个工具可能更加实用。例如,要创建一个包含特定目录的 cpio 存档,您可以使用清单 11 中的命令。

清单 11. 创建包含特定目录的 cpio 存档

$ ls ./dira ./dirc |cpio -ov > diranc.cpio

这个命令的 ls 部分输出将要复制的文件列表(在本示例中是两个目录中的内容)。后半部分是用于将它们复制到存档中的 cpio 命令。对这个命令进行分析,其中包括两个选项:

o 选项将文件复制到存档。

v 选项在复制文件时显示文件列表,这可用于对复制过程进行确认。

通过将 cpio 的输出重定向到一个新的文件,可以创建实际的存档。

上面的命令存在一定的局限,它只能复制那些显式列出的文件。要复制整个目录,最好的方法是使用 find 命令(请参见清单 12)。

清单 12. 使用 find 命令复制整个目录

$ find . |cpio -ov >archive.cpio

上一页  1 2 3 4 5 6 7  下一页

Tags:系统 管理员 工具包

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接