Eu tenho uma pasta composta de M
de várias subpastas, cada uma delas contendo alguns arquivos de texto e N
images ( *.png
)
Esta é a aparência da árvore:
/parent/
/sub-folder1/
/data1.dat
/data2.dat
/image1.png
/image2.png
...
/imageN.png
/sub-folder2/
/data1.dat
/data2.dat
/image1.png
/image2.png
...
/imageN.png
...
/sub-folderM/
/data1.dat
/data2.dat
/image1.png
/image2.png
...
/imageN.png
observe que todas as imagens em cada subpasta são nomeadas da mesma forma (ex .: image1.png, ..., imageN.png
)
O que eu preciso é mover somente as imagens para uma nova pasta pai (digamos parent2
), enquanto replico a estrutura de subpastas. Depois que a mudança é feita, a nova pasta pai deve ficar assim:
/parent2/
/sub-folder1/
/image1.png
/image2.png
...
/imageN.png
/sub-folder2/
/image1.png
/image2.png
...
/imageN.png
...
/sub-folderM/
/image1.png
/image2.png
...
/imageN.png
(isto é: somente imagens e respeitando a mesma estrutura de sub-pastas)
e a pasta parent
original deve ter a seguinte aparência:
/parent/
/sub-folder1/
/data1.dat
/data2.dat
/sub-folder2/
/data1.dat
/data2.dat
...
/sub-folderM/
/data1.dat
/data2.dat
(ex: imagens movidas)
Eu vi alguns exemplos de scripts que podem mover todos os arquivos para uma nova pasta ( Script de shell para mover todos os arquivos de subpastas para a pasta pai ou alguns que podem mover apenas imagens ( Script para mover imagens ), mas eu não encontrei uma que faria isso respeitando a árvore de sub-pastas .