Как я могу рекурсивно копировать файлы без перезаписи существующих разрешений?

Когда я копирую файлы из одного каталога в другой, разрешения на каталог сбрасываются (например, с 0755 по 0775), и это вызывает проблемы, заставляя меня возвращаться и вручную сбросить разрешения каталога. Я сейчас делаю cp -r /source/directory /destination/directory

Я хочу скопировать все файлы и новые каталоги, но не перезаписывать разрешения существующих каталогов.

1
задан 14 August 2013 в 08:45

2 ответа

Добавить флаг -p

cp -pR /source/dir /dest/dir

Из man cp:

-p     same as --preserve=mode,ownership,timestamps
7
ответ дан 24 May 2018 в 19:03

Мое ~/.bashrc было изменено, чтобы содержать

alias cp='cp -i --preserve=all'

Это означает, что когда я использую cp, он также запрашивает перед перезаписью (-i) и сохраняет все (т.е. режим,

Если хотите, вы всегда можете изменить его только на mode, а не на all, но мне нравится иметь этот псевдоним, а также, возможно, дополнительные атрибуты: context, links, xattr).

для изменения значений по умолчанию cp.

2
ответ дан 24 May 2018 в 19:03

Другие вопросы по тегам:

Похожие вопросы: