Как я копирую определенный набор файлов в одной структуре каталогов другому?

Скажите, что у меня есть структура каталогов несколько как это:

view
 |
 +--- 0001
 |
 +--- 231
 |
 +--- e2341
 |
 ... and so on

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

Я попробовал что-то вдоль строк с …

cp -R */file_001.jpg /destination_folder

…, но все, что я получаю, является следующей ошибкой

cp: cannot stat `file_001.jpg': No such file or directory

Я предполагаю, что должен передать по каналу в именах файлов так или иначе, кто-либо надел какую-либо хорошую идею, как сделать это?

1
задан 08.03.2015, 00:43

1 ответ

Можно использовать, находят объединенными с функцией передачи cpio для этого. Что-то вроде этого:

find old_dir -name "file_001.jpg" -print | cpio -pd new_dir

-p флаг на cpio инициировал режим передачи, который эффективно просто копирует файлы от их исходного местоположения до new_dir. -d флаг создает все необходимые каталоги, таким образом, у Вас будет та же иерархия под new_dir поскольку Вы имели под old_dir (по крайней мере, насколько каталоги, содержащие file_001.jpg затронуты).

4
ответ дан 12.12.2019, 09:23

Теги

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