
Я готовлюсь к экзамену LPIC и команда cpio
с вариантами -d
и --make-directories
пришла.
Может ли кто-нибудь привести пример того, как это работает?
cpio -d
cpio --make-directories
решение1
Эти два параметра делают одно и то же, они создают каталог, в котором будет создан файл. Если вы не укажете ни один из этих параметров и каталог, в котором будет создан файл, не существует, то cpio
возникнет ошибка.
cd /tmp
mkdir -p test1/a
cd test1/a
touch x1 x2
find . | cpio -pmv ../b
Выдает ошибку: cpio ../b/./x1 Cannot open: No such file or directory
Тогда как:
find . | cpio -pmv --make-directories ../b
фактически создаст /tmp/test1/b
и скопирует туда файлы. Конечно, вы могли бы создать этот единственный каталог вручную, но если вы копируете сложную иерархию каталогов, это невыполнимо.