Изменение разрешений для пользователя консоли (macOS)

#bash #macos #scripting #permissions

#bash #macos #сценарии #разрешения

Вопрос:

Я пытаюсь написать крошечный скрипт для изменения разрешений для определенной папки для вошедших в систему пользователей на Macbook. Ни у одного из этих пользователей нет прав администратора, поэтому мне приходится запускать его удаленно от имени root через наш MDM. Я не уверен, что правильно понимаю синтаксис. Может ли кто-нибудь помочь мне с этим?

     #!/bin/sh
   # Get current logged in user
   TargetUser=$(echo "show State:/Users/ConsoleUser" | 
    scutil | awk '/Name :/ amp;amp; ! /loginwindow/ { print $3 }')

   # Update permissions for target user
   chown -R "${TargetUser}" /usr/local/bin
   chmod g w /usr/local/bin
  

Комментарии:

1. Почему вы думаете, что с этим скриптом что-то не так?

2. Примечание: как правило, плохая практика безопасности — предоставлять обычным пользователям доступ на запись к командам, которые они выполняют.

3. Значение true #!/bin/sh не будет поддерживаться var=$(cmdSub) . Вы получаете там сообщение об ошибке? Если вы это сделаете, попробуйте var=`cmdSub` . Лучше использовать #!/bin/bash , если это возможно. Удачи.

4. И первое место, которое нужно проверить, это shellcheck.net . Удачи.