Как скопировать папки/файлы из каталогов, сохранив имена папок

Как скопировать папки/файлы из каталогов, сохранив имена папок

Как скопировать папки с изображениями из всех каталогов Case-r20-c020-t001-da1, например, ..., Case-r20-c020-t001-danв новый путь, сохранив исходные имена каталогов, например Case-r20-c020-t001-da1, .... Case-r20-c020-t001-danДопустим, у меня есть структура каталогов, как показано ниже;

Case-r20-c020-t001-da1/
  |____image/          <<<< This is a folder that has some pictures
        |______ jpg     
        |______ png

  |____infromation/     <<<< This is a folder.
        |_______ text1.txt 
        |_______ text2.txt 

  |____ file1.txt

Case-r20-c020-t001-da2/
  |____image/
        |______ jpg 
        |______ png

  |____infromation/
        |_______ text1.txt 
        |_______ text2.txt 

  |____ file1.txt

: .

Case-r20-c020-t001-dan/  <<< n goes from 3,...20.
  |____image/
        |______ jpg
        |______ png

  |____infromation/
        |_______ text1.txt 
        |_______ text2.txt

  |____ file1.txt

Моя первая попытка выглядит следующим образом:

for f in Case-r20-c020-t001-da*;do (cp -r images /path/folder*);done

Итак, я хочу скопировать вышеизложенное в новый каталог, и вывод должен быть таким, как показано ниже;

Case-r20-c020-t001-da1_images/
  |____image/          
        |______ jpg     
        |______ png

Case-r20-c020-t001-da2_images/
  |____image/
        |______ jpg 
        |______ png

: .

Case-r20-c020-t001-dan_images/
  |____image/
        |______ jpg
        |______ png

Я предпочитаю быть единоличным командующим.

Любая помощь будет оценена по достоинству.

Спасибо,

решение1

Это было бы понятнее в виде небольшого скрипта, но здесь это написано как одна команда. Для ясности оно разделено на две строки: удалите обратную косую черту, если хотите объединить строки вместе.

for old in /old/path/Case-r20-c020-t001-da*; \
do new="/new/path/$(basename $old)_images"; mkdir -p "$new" && cp -r "$old/image" "$new/"; done

Связанный контент