Копирование только нужных типов файлов в UNIX с сохранением путей

Решаем задачу о копировании файлов из каталога SRC в каталог DST, но только определенных заданных типов, сохраняя структуру каталогов.

Это может понадобиться для сбора ассетов проекта, создания архивов и т.п.

К примеру, вы хотите скопировать только видео файлы с расширениями .*avi и *.mpg. Тогда можно использовать команду rsync вот в таком виде:

Разберем, как это работает.

Флаг -m (в -am) позволяет избежать копирования пустых папок, где нет искомых файлов.

Далее идут ключи —include, которые добавляют всё новые типы файлов. Обратите внимание, что ключи чувствительны к регистру, и потому —include=’*.avi’ скопирует myfile.avi, но не myfile.AVI.

Если вам нужны любые комбинации регистра, можно воспользоваться форматом вроде:

Опция —include=’*/’ добавит подкаталоги, а —exclude=’*’ — исключит всё остальное.

 

Мало букафф? Читайте есчо !

Как проверить занят ли в port в unix

Январь 31, 2023 г.

... и выполнить те или иные операции в зависимости от результата проверки, используя командный процессор, например bash. Примерно так формулируется очередная небольшая задача, возникающая в ежедневном потоке рутины автоматизации работы. Существует ...

Читать

Настройка SSH-туннеля для доступа к OpenAI API из недоступной страны

Май 31, 2025 г.

В эпоху блокировок, санкций актуальным становятся пробросы туннелей до определенных сервисов. Расскажу на примере SSH-туннеля для доступа к OpenAI API из России. Т.е. ваш сервер размещен в стране, где доступ к api.openai.com ограничен, но хотите использовать ...

Читать

Скрипт для рекурсивной распаковки

Сентябрь 18, 2025 г.

Столкнулся с задачей на практике - в архиве tar.gz лежит еще один архив, в котором еще один и так далее... Как с кощеевым яйцом, только цепочка в матрешке куда более длинная. Написал небольшой скрипт для bash, по распаковке такого сюрприза. ...

Читать

Скрипт для переименования базы данных в mySQL

Сентябрь 29, 2020 г.

В mySQL нет выражения вроде RENAME DATABASE oldName to newName. Если возникла задача переименовать базу данных, придется выполнить по-этапно: операции создания новой БД, копирования таблиц из старой базы (RENAME TABLE ...) и удаление старой базы. ...

Читать
 

Комментарии к «Копирование только нужных типов файлов в UNIX с сохранением путей»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: