2013-04-25 105 views
3

我必须将目录中的文件复制到其备份目录,保留文件夹结构。例如。在MyFolder/Test/aaa文件aaa.MyFolder.bck/Test/aaa将文件复制到保存文件夹结构的备份目录

我试图用

cp --parents MyFolder/Test/aaa .MyFolder.bck; 

但结果是.MyFolder.bck/MyFolder/Test/aaa,而不是.MyFolder.bck/Test/aaa(这是一个我想要的)。

+1

[Duplicate](http://serverfault.com/questions/502478/copy-file-to-backup-directory-preserving-folder-structure) – scai 2013-04-25 08:10:12

+0

[另一个重复](https://unix.stackexchange.com/q/83593/37153) – Geremia 2016-09-24 00:16:41

回答

0

为什么你不使用两个命令?

cd MyFolder && cp --parents /Test/aaa .MyFolder.bck; 

而且有针对Linux的几种同步公用事业太,甚至是备份的目的,例如rsync,rdiff-backup,synkron ...更不用说本地VCS的优势了......您不应该重新发明轮子。

1

您需要cd的目录,然后将该文件复制:

(cd MyFolder && cp --parents Test/aaa ../.MyFolder.bck) 

围绕该命令的支架使其在一个子shell运行,而不是在当前的shell。这样做的好处是,它可以让您不必再将cd返回到原始目录。

+0

谢谢!我有这个,但我找不到正确的方法来做到这一点。 – user171102 2013-04-25 08:40:25

0

我喜欢为此使用“rsync”。

的rsync -av MyFolder中/ .MyFolder.bck/

确保使用后斜线,因为他们告诉rsync的是这两个参数是“顶级”目录(即不创建.MyFolder.bck中的另一个MyFolder)。

相关问题