Как скопировать дерево каталогов с файлами, соответствующими результатам поиска, с помощью rsync

find /src/dir/ -mtime -10 -printf %P\\0|rsync --files-from=- --from0 /src/dir/ /dst/dir/


Эта команда использует утилиты find и rsync для копирования дерева каталогов с файлами, которые соответствуют условиям поиска.

Команда find выполняет поиск файлов в директории /src/dir/, которые были изменены за последние 10 дней. Результаты поиска выводятся с использованием формата %p, который представляет полный путь к файлу. Каждый результат поиска разделен символом NULL (0).

Команда rsync используется для скопирования файлов, соответствующих результатам поиска, из /src/dir/ в /dst/dir/. Опция —files-from=- указывает rsync использовать список файлов из стандартного ввода, а —from0 говорит об использовании символа NULL для разделения путей к файлам.

Эта команда полезна, когда требуется скопировать только определенные файлы или файлы, измененные за определенный период времени, из каталога в другой каталог.

Альтернативой может быть использование команды cp для копирования файлов, соответствующих результатам поиска, однако rsync предлагает дополнительные функции, такие как возможность синхронизировать только измененные файлы и поддержка удаленной передачи файлов.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *