使用父目录进行安全复制

时间:2016-06-25 05:20:43

标签: linux bash macos

我在远程服务器上有一组文件,结构如下:

~/dir_1/file
~/dir_2/file
~/dir_3/file
...
~/dir_N/file

我想将这些文件复制到本地计算机并创建 immediate 父目录。我在bash中试过这个但是它不起作用:

scp name@remote.server:~/dir_*/file ./

非常感谢任何帮助。我使用的是Mac OSX。

2 个答案:

答案 0 :(得分:1)

在远程服务器上使用 globbing 仅在子目录+ tar 中匹配file以创建完整的层次结构

ssh name@remote-server "tar cf - dir_*/file"|tar xf -

答案 1 :(得分:0)

检查Rsync manual,并假设您的问题中没有错过任何内容,您必须这样做:

rsync -av name@remote.server:~/dir_* .

报价手册:

  

rsync -avz foo:src / bar / data / tmp

     

这会以递归方式从目录src / bar传输所有文件   在机器foo上进入/ data / tmp / bar目录   本地机器。这些文件将在" archive"模式,哪个   确保符号链接,设备,属性,权限,   转让中保留所有权等。另外,   压缩将用于减少数据部分的大小   传递。传输。

您的SO版本的选项可能会有所不同,请查看man rsync

希望它有所帮助。