Como você pode recursivamente copiar todos os arquivos * .foo em src para direcionar usando cp e / ou encontrar?

StackOverflow https://stackoverflow.com/questions/651136

  •  19-08-2019
  •  | 
  •  

Pergunta

cp -v -ur path/to/jsps/ /dest/path/

O comando acima copia todos os arquivos que foram atualizados a partir do diretório de origem para o destino, preservando a estrutura de diretório.

O que eu não consigo entender é como copiar arquivos .someExtention única *. Eu sei que você pode usar algo como:

find -f -name *.jsp -exec some awesome commands {}

Mas eu não sei como fazê-lo (e eu não tenho tempo para ler as páginas de informação em detalhe).

Toda a ajuda é muito apreciada.

Obrigado, LES

Foi útil?

Solução

Se você quiser usar find / cp, em seguida, o seguinte deve fazer o truque:

find -f -name *.jsp -exec cp --parents {} /dest/path \;

mas rsync é provavelmente a melhor ferramenta.

Outras dicas

rsync poderia ajudar - você pode dizer que apenas copiar determinados arquivos com uma combinação de incluir e excluir opções, por exemplo,

rsync -a \
   --include='*.foo' \
   --include='*/' \
   --exclude='*' \
   path/to/jsps/ /dest/path/

Veja a manual e olhar para a seção intitulada regras de filtragem para mais.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top