Как скопировать права доступа и владельцев папок и файлов с помощью командной строки на macOS?

Как скопировать права и владельца (и группу) с одной папки на другую на macOS с использованием команды, которая работает именно в этой операционной системе?
  • 14 июня 2024 г. 15:31
Ответы на вопрос 3
Для копирования прав доступа и владельцев файлов и папок на macOS можно использовать команду `rsync`. Вот пример команды для копирования прав доступа и владельца с одной папки на другую:

```
rsync -aAXv --no-o --no-g /path/to/source/folder/ /path/to/destination/folder/
```

Где:
- `-aAXv` - опции для копирования в режиме архива, сохранения прав доступа, владельца и прочих атрибутов;
- `--no-o` - исключение копирования владельца файлов;
- `--no-g` - исключение копирования группы файлов;
- `/path/to/source/folder/` - путь к исходной папке;
- `/path/to/destination/folder/` - путь к целевой папке.

Пожалуйста, убедитесь, что у вас есть необходимые права доступа на копируемые файлы и папки.
Потому что p - это permissions. А вам нужны user и group.
Похоже я нашел решение - https://stackoverflow.com/a/1325789 
chown $(stat -f%u:%g "$srcdir") "$dstdir" # Copy owner and group
chmod $(stat -f%Mp%Lp "$srcdir") "$dstdir" # Copy the mode bits

Там еще что-то про ACL, но я не знаю что это, вероятно мне это не нужно

Но если есть альтернативные решения - буду рад рассмотреть
Похожие вопросы