Перемещение изображений из подпапок в новые подпапки

У меня есть папка, состоящая из M нескольких подпапок, каждая из которых содержит некоторые текстовые файлы и N изображения (*.png)

Это то, что дерево выглядит следующим образом: [ ! d1]

/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

заметить, что все изображения в каждой подпапке имеют одинаковые имена (например: image1.png, ..., imageN.png)

Мне нужно переместить только изображения в новую родительскую папку (скажем, parent2), в то время как репликация структуры подпапок. После выполнения перемещения новая родительская папка должна выглядеть так:

/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

(т. Е. Только изображения и соблюдение той же структуры подпапок)

и оригинал должна выглядеть так:

/parent/
  /sub-folder1/
   /data1.dat
   /data2.dat
 /sub-folder2/
   /data1.dat
   /data2.dat
 ...
 /sub-folderM/
   /data1.dat
   /data2.dat

(т. е. изображения перемещены)

Я видел несколько примеров сценариев, которые могут перемещать все файлы в новую папку (сценарий оболочки для перемещения всех файлов из подпапок в родительскую папку) или некоторых, которые могут перемещать только изображения (сценарий для перемещения изображений), но я не нашел того, который будет делать это, соблюдая дерево подпапок.

1
задан 13 April 2017 в 15:23

1 ответ

Скопировать parent1 в parent2 Удалить файлы dat из подкаталогов parent2 Удалить файлы png из подкаталогов parent1
$ cp -r parent1/ parent2
$ rm parent2/*/*.dat
$ rm parent1/*/*.png
2
ответ дан 24 May 2018 в 09:25

Другие вопросы по тегам:

Похожие вопросы: