循环通过子目录

我需要浏览目录/ home / userName /的子目录,并find名称以SY101开头,文件扩展名为.csv的文件,并将这些文件传输到另一台服务器。 我的问题是如何循环通过子目录,并继续寻找文件?

你可以做几件事,这可能是最有效的,但我不知道你的文件的大小和服务器之间的链接,但让我试试:

find /home/userName/ -name 'SY101*.csv' | \ xargs tar cvfz - | ssh hostname 'tar xzf -' 

这将把文件复制到另一台服务器上的家中。

请注意,完整path将被转移。

像这样的东西可能适合你:

 rsync --recursive --include='SY101*.csv' --include='*/' --exclude='*' /home/userName/ username@hostname:destdir 

这将重现目的地上的源目录层次结构。