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

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

 2008-11-12 08:30:33 来源:WEB开发网   
核心提示: 两者之间的管道 (|) 将第一个 tar 的标准输出传入到第二个 tar 的标准输入,并且高效地将文件复制到一个并不存在的存档文件,系统管理员工具包: 移动 UNIX 目录(3),然后再从其中提取文件, 如果您显式地指定了路径,那么有些变种会改写这个信息,并在提取文件的时候改变其所有权,那

两者之间的管道 (|) 将第一个 tar 的标准输出传入到第二个 tar 的标准输入,并且高效地将文件复制到一个并不存在的存档文件,然后再从其中提取文件。

如果您显式地指定了路径,那么 tar 命令可以保持存档中所包含的文件的完整路径。清单 6 使用显式的路径将文件复制到存档中,这意味着,不能将这些文件提取到其他的地方,只能返回到它们的初始位置。

清单 6. 显式地指定路径

$ tar cf myhome.tar /home/mc

有些 tar 变种可以去掉开头的正斜杠,这使得您可以将文件提取到任何位置。要确保总可以将文件放到需要的位置,您应该使用清单 7 中的命令从当前目录中添加文件。

清单 7. 从当前目录添加文件

$ cd /home/mc
$ tar cf myhome.tar .

与 cp 相比,tar 命令有一个优点,那就是通过添加 v 命令行选项以打开详细模式,您可以在将文件从源复制到目标的过程中监视文件的传输。通常,最好是在提取文件的 tar 命令中使用这个选项,而不是在创建存档的 tar 命令中使用,因为它可以确保正确地对文件进行复制,而不是证实对其进行了正确的读取(请参见清单 8)。

清单 8. 添加 v 命令行选项

$ tar cf - .|(cd /tmp/mc; tar xvf -)
./
./.bash_aliases
./.bash_history
./.bash_path
./.bash_profile
./.bash_vars
./.bashrc
./xmlsimple.pl
./rest.xml
...

请注意,如果系统的 tar 不支持长路径名,那么它可能不支持更新的 tar 格式。GNU tar 支持新的 tar 格式,并且支持长的或者非常深的路径名。

缺省情况下,大多数 tar 变种可以正确地复制和重新创建文件和目录,并保持相同的所有权和权限信息,然而,如果作为 root 用户运行,那么有些变种会改写这个信息,并在提取文件的时候改变其所有权。您可以使用 p 选项确保保持相应的权限和所有权(请参见清单 9)。

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

Tags:系统 管理员 工具包

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