Решаем задачу о копировании файлов из каталога SRC в каталог DST, но только определенных заданных типов, сохраняя структуру каталогов.
Это может понадобиться для сбора ассетов проекта, создания архивов и т.п.
К примеру, вы хотите скопировать только видео файлы с расширениями .*avi и *.mpg. Тогда можно использовать команду rsync вот в таком виде:
|
|
rsync -am --include='*.mpg' --include='*.avi' --include='*/' --exclude='*' SRC/ DST |
Разберем, как это работает.
Флаг -m (в -am) позволяет избежать копирования пустых папок, где нет искомых файлов.
Далее идут ключи —include, которые добавляют всё новые типы файлов. Обратите внимание, что ключи чувствительны к регистру, и потому —include=’*.avi’ скопирует myfile.avi, но не myfile.AVI.
Если вам нужны любые комбинации регистра, можно воспользоваться форматом вроде:
|
|
--include='*.[aA][vV][iI]' |
Опция —include=’*/’ добавит подкаталоги, а —exclude=’*’ — исключит всё остальное.
UNIX
Данная запись опубликована в 23.02.2018 11:12 и размещена в рубрике Программирование.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Август 23, 2018 г.
Когда над проектом работает несколько разработчиков, то возникают определенные структурные и организационные вопросы. Каждый программист обычно работает ...
Читать
Октябрь 6, 2023 г.
Полезный пример поиска в UNIX, чтобы найти файлы, содержащие 2 и более разных подстрок. Например, мне нужно было найти все файлы конфигурации, в которых одновременно есть значение "field_spacing" и "excluded: false".
Grep такой функции поиска не ...
Читать
Февраль 20, 2018 г.
Если вы укажите полный путь архивируемой папки в UNIX, то файлы будут размещены в архиве вместе полным путем. Не всегда это удобно и правильно, зависит от выполняемой задачи.
Как отсечь абсолютные пути, оставив только относительные?
Для этого ...
Читать
Декабрь 3, 2019 г.
Задача возникла в контексте SEO, требовалось предотвратить индексацию тестовых сайтов поисковыми системами. На практике видно, что инструкции файла robots.txt ...
Читать