Scp命令无需递归复制特定文件夹

时间:2014-01-27 07:28:41

标签: bash shell unix jenkins

我正在将作业从一台服务器迁移到另一台jenkins服务器。请找到以下工作结构

 job1                   job2         job3         
 config.xml             config.xml    config.xml
 buildnumber            buildnumber   buildnumber
 last build             last build    last build

正如上面提到的工作结构,我们有很多工作。我需要只将作业名称和所有作业的config.xml内部复制到另一台服务器中的相应作业。任何人都可以帮助从一台服务器复制到另一台unix服务器(centos)。如果我使用scp -r,它会复制所有子文件夹,我只需要复制作业名称和config.xml。

1 个答案:

答案 0 :(得分:1)

您可以使用rsync

rsync -av --include=job[123]/config.xml --exclude=job[123]/* -e ssh job[123] remote-server:/your/disired/path/

或者您可以使用tar

tar -cpvf - job[123]/config.xml | ssh remote-server "cd /your/desired/path/; tar -xpf -"

tar支持-C

tar -cpvf - job[123]/config.xml | ssh remote-server tar -xpf - -C /your/desired/path/
相关问题