Задать вопрос
@Drovosek01

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

Нахожусь на macOS Sonoma 14.5 Apple M1
Пишу shell-скрипт и мне необходимо скопировать права и владельца (и группу) с одной папки на другую (без вложенных файлов).

Гуглил.
Команда chmod --references не работает в macOS, тут другая реализация chmod
Нагулил вот такое решение - https://stackoverflow.com/a/20106936

Выполнение команды stat -f "%p" /path/to/folder вернуло 40755
Потом я выполнилchmod 40755 /path/to/other/folder то получаю ошибку
chmod: Invalid file mode: 40755

Что я делаю неправильно?
  • Вопрос задан
  • 78 просмотров
Подписаться 1 Простой 5 комментариев
Пригласить эксперта
Ответы на вопрос 2
ky0
@ky0
Миллиардер, филантроп, патологический лгун
Потому что p - это permissions. А вам нужны user и group.
Ответ написан
@Drovosek01 Автор вопроса
Похоже я нашел решение - 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, но я не знаю что это, вероятно мне это не нужно

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

Войдите, чтобы написать ответ

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