目录树的拷贝--shell

之前写过一篇类似的目录树的完整拷贝的文章http://www.firefoxbug.com/?p=602。今早逛论坛的时候看了一个帖子,说的是:如何带文件路径拷贝?下面的回复开始的时候看不懂,后来去实践了下。下面是用法:

#tar用-来代替目标文件(这里是标准输出),-c代表创建一个打包文件,-f代表是文件,-x代表解压,-p保留文件原有属性和所有权
tar -cpf - sourdir/file | tar -xpf - -C desdir/
# tar -cpf - /home/firefox/Picture/disk2.png | tar -xpf - -C MyProgram/

(cd sourdir/ && tar -cpf - .) | (cd desdir/ && tar -xpf p -C .)
(cd /home/MyProgram/ && tar -cpf - .) | (cd /home/des/ && tar -xpf - -C .)

原本 tar 命令的用法是http://www.firefoxbug.com/?p=504,这里就是把目标文件都用“-”来代替了,"-"在这里分别表示指定目标文件作为stdout指定stdout作为目标文件 。

标签:Linux, Shell

评论已关闭