2013-04-02 46 views
0

我遇到了SCP(也是rsync)的一个小问题。我需要将某些文件从服务器A(运行SunOS 5.8)复制到服务器B(运行SunOS 5.10)。scp递归地在SunOS上的目录

首先,我得通过ssh文件(几百个)的列表,找到

FILES=`ssh [email protected] find ./ -name "*.sh" -o -name "*.cbs" -print` 
scp -r [email protected]:"$FILES" /u01/appl/somedir/ 

我的问题是,我想复制相对路径,例如文件产品/ 11/ora/clean.sh 也创建目录结构(结果中有/u01/appl/somedir/product/11/ora/clean.sh)。目前我只能下载该文件并且没有创建目录。正如你所看到的,我在scp中使用了-r标志。

感谢您的建议

+0

试试[unix.SE](http://unix.stackexchange.com/),不在这里。你的问题是“递归的”只适用于按名称复制目录,而不是按名称复制文件。 –

回答

0

我认为,一个更简单的方式来做到这将是tar文件,然后送他们......

FILES=`tar cvf files.tgz `find ./ -name "*.sh" -print`` 
scp [email protected]:/home/user $FILES 

这样可以使所有的目录结构。