Copiando apenas JPG de uma estrutura de diretórios para outro local Linux

3

Desejo recursivamente percorrer as pastas de uma estrutura de diretório e copiar qualquer arquivo .jpg que encontrar em outro diretório.

Acho que tive a ideia errada com:

cp -R photos/*.jpg /cpjpg

Como posso fazer isso a partir da linha de comando no Ubuntu?

    
por Excellll 04.01.2010 / 22:57

3 respostas

8

Isto irá copiar todos os arquivos terminados em .jpg ou .jpeg (também insensitivos) no diretório atual e todos os seus subdiretórios no diretório / cpjpg. A estrutura do diretório não é copiada.

find . -type f \( -iname "*.jpg" -o -iname "*.jpeg" \) -exec cp '{}' /cpjpg \;
    
por 04.01.2010 / 23:01
7

Isso preserva a estrutura do diretório:

rsync -av --include='*.jpg' --include='*/' --exclude='*' SRC DST

veja link

    
por 05.01.2010 / 07:05
4

Isso preservará a estrutura de diretórios.

find photos/ -type f \( -iname '*.jpg' -o -iname '*.jpeg' \) -print0 |xargs -0 tar c |(cd /cpjpg ; tar x)
    
por 04.01.2010 / 23:02

Tags