Looping através de subdiretórios

2

Eu preciso passar pelos subdiretórios de um diretório / home / userName / e encontrar os arquivos cujos nomes começam com SY101 e sua extensão é .csv e transferir esses arquivos para outro servidor. Minha pergunta é como eu faço o loop através dos subdiretórios e continuo procurando os arquivos?

    
por yogsma 16.09.2010 / 23:00

2 respostas

2

Você pode fazer várias coisas, isso é provavelmente o mais eficiente, mas eu não sei nada sobre o tamanho de seus arquivos e seu link entre servidores, mas deixe-me tentar:

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

Isso copiará os arquivos para sua casa no outro servidor.

Por favor, note que o caminho completo será transferido.

    
por 16.09.2010 / 23:20
2

Algo assim pode funcionar para você:

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

Isso reproduzirá a hierarquia de diretórios da origem no destino.

    
por 17.09.2010 / 00:34