Копирование подпапок в новые папки с теми же именами суперпапок

Пожалуйста, не стесняйтесь направлять меня на прошлые сообщения форума, посвященные этому вопросу, но я пока не смог их найти.

Мне нужен код, который я могу использовать в терминале, который позволяет мне выполнять следующее, но может масштабироваться до большего количества папок. tfMRI_SOCIAL_RL - это перемещаемая папка.

firstdirectory / 1 / MNINonLinear / Results / tfMRI_SOCIAL_RL -> seconddirectory / 1 / MNINonLinear / Results /

firstdirectory / 2 / MNINonLinear / Results / tfMRI_SOCIAL_RL -> второй каталог / 2 / MNINonLinear / Results 113]

firstdirectory / 3 / MNINonLinear / Results / tfMRI_SOCIAL_RL -> seconddirectory / 3 / MNINonLinear / Results /

Большое спасибо, Брэндон

0
задан 21 September 2019 в 00:02

3 ответа

Принятие seconddirectory существует, и у Вас есть разрешение записи, можно использовать следующую команду в терминале:

cp -r firstdirectory/* seconddirectory/

опция -r позволяет команде cp копии копировать каталоги.

Всего наилучшего

0
ответ дан 23 October 2019 в 11:08

Если я понимаю Ваш вопрос правильно, Вы хотите переместить папки tfMRI_SOCIAL_RL включая их родительские папки, но не другие файлы или папки, которые могут существовать в родительских папках.

, Если firstdirectory и seconddirectory находятся в том же родительском каталоге, можно использовать:

cd /path/to/firstdirectory && mkdir ../seconddirectory && find -type d -name tfMRI_SOCIAL_RL -exec cp -r --parents '{}' ../seconddirectory \; -delete

, Если firstdirectory и seconddirectory не находятся в том же каталоге, используйте

cd /path/to/firstdirectory && mkdir /path/to/seconddirectory && find -type d -name tfMRI_SOCIAL_RL -exec cp -r --parents '{}' /path/to/seconddirectory \; -delete
0
ответ дан 23 October 2019 в 11:08

Я предложил бы использовать rsync. Это намного более мощно, чем копия.

1), если Вы просто хотите скопировать целое содержание одного каталога другому (который, кажется, не имеет место, поскольку это очень тривиально) затем CP-r достаточно, но rsync был бы быстрее. rsync

2), Если Вы хотите к способности продолжить синхронизировать эти две папки с возрастающими изменениями, затем rsync, способ пойти (CP не может сделать этого)

2), Если Вы хотите скопировать только имена папок (т.е. древовидная структура), но никакие файлы, затем rsync все еще не могут помочь. См. https://www.cyberciti.biz/faq/unix-linux-bsdosx-copying-directory-structures-trees-rsync /

0
ответ дан 23 October 2019 в 11:08

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

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