
Я хотел бы скопировать все/usr/share/zoneinfo/каталог в /var/www/clients/client1/web5/./usr/share/зонаинфо/. ( /./
Добавлено для ясности и форматирования)
Каталог /var/www/clients/client1/web5/ существует, но лежащий в его основеusr/share/зонаинформациякаталог не делает этого.
Есть ли способ сделать это одной командой или мне нужно mkdir -p
сначала позвонить?
Я думал, cp --parents
что так и будет, но, похоже, это работает только при копировании одного файла, а не всего каталога.
решение1
Поскольку вы указываете место назначения /var/www/clients/client1/web5/./usr/share/zoneinfo/
, cp
сначала будет проверяться, существует ли каталог для записи файлов. Так что да, вам сначала нужно будет создать каталог. Однако, если /var/www/clients/client1/web5/./usr/share/
он уже существует, вы должны иметь возможность:
cp -pr /usr/share/zoneinfo /var/www/clients/client1/web5/./usr/share/zoneinfo
поскольку существует целевой каталог, zoneinfo
в который можно записать данные.
решение2
rsync -a --relative
сделал свое дело.
rsync -a --relative /usr/share/zoneinfo/ /var/www/clients/client1/web5/
Заслуга в этом принадлежитunix_ninjaнаэтот твит