Как реплицировать структуру каталога, исключив файлы

find . -type d -print0 | (cd $DESTDIR; xargs -0 mkdir)


Команда «find . -type d -print0 | (cd $destdir; xargs -0 mkdir)» используется для репликации структуры каталога, исключая файлы.

Она выполняет следующие действия:

1. «find . -type d -print0»: Эта часть команды используется для поиска всех каталогов в текущем каталоге и вывода их имен в формате, учитывающем пробелы и специальные символы. Вывод команды передается в следующую часть команды через конвейер (|).

2. «(cd $destdir; xargs -0 mkdir)»: В этой части команды происходит переход в целевой каталог ($destdir) с помощью команды «cd». Затем команда «xargs» читает список каталогов из предыдущей части команды и передает их в качестве аргументов команде «mkdir» для создания каталогов.

Команда полезна, когда необходимо создать точную копию структуры каталога без файлов. Альтернативным подходом может быть использование команды «cp -R —no-preserve=mode,ownership», но она будет копировать также и файлы вместе со структурой каталога. В данном случае команда «find» с «xargs» предлагает более удобное и быстрое решение.

Ответить

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