как создать резервную копию всех каталогов из текущего каталога

find -maxdepth 1 -type d -print0 | xargs -0 -I {} tar -cvzf {}.tar.gz {}


Команда find и xargs используются для создания резервной копии всех каталогов в текущем каталоге. Она выполняет поиск всех подкаталогов (-type d) в текущем каталоге и его подкаталогах (без рекурсии, -maxdepth 1). Затем найденные каталоги передаются в tar, который создает архивы (.tar.gz) для каждого каталога. Флаги -print0 и -0 используются для корректной обработки каталогов с пробелами и специальными символами в именах.

Альтернативы: Можно использовать утилиту rsync для более эффективного создания резервных копий с возможностью инкрементального обновления.

Аргументы:
-maxdepth 1: Ограничивает поиск только в текущем каталоге без вложенных подкаталогов.
-type d: Ищет только каталоги.
-print0: Выводит результаты с нулевыми символами для корректной обработки пробелов и специальных символов в именах.
-0: Позволяет xargs обрабатывать входные данные с нулевыми символами.
tar -cvzf {}.tar.gz {}: Создает сжатый архив с именем каталога и сохраняет его в текущем каталоге.

Ответить

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