Получить пользователей и группы с Mac


1

Как я могу получить пользователей и группы, перечисленные в разделе «Системные настройки», с Mac через терминал?

я пробовал

dscl . list /users
dscl . list /groups

Но они также дают мне список системных пользователей. Мне просто нужны пользователи и группы, которые я хотел бы увидеть, если бы зашел в Системные настройки и просмотрел их. Любая помощь приветствуется. Заранее спасибо.

Ответы:


3

Это немного сложнее, чем это, но по большей части панель настроек «Пользователи и группы» работает только с пользователями и группами с идентификаторами выше 500. Вы можете эмулировать это, отфильтровывая списки, которые генерирует dscl. Вот быстрая и грязная версия, использующая awk для фильтрации:

dscl . -readall /Users UniqueID | awk '/^RecordName:/ {name=$2}; /^UniqueID: / {if ($2 > 500) print name}'
dscl . -readall /Groups PrimaryGroupID | awk '/^PrimaryGroupID:/ {id=$2}; /^RecordName: / {if (id > 500) print $2}'

Первый работал, вторая строка вообще ничего не возвращала, даже администратор или обычный пользователь, как указано в Системных настройках.
— Джон

Второй ищет группы, а не пользователей; если вы не создали ни одной группы (кроме встроенных системных), она ничего не отобразит.
— Гордон Дэвиссон

Спасибо за помощь. Есть ли какая-то конкретная документация, связанная с этим. Вы упомянули быструю и грязную версию. Есть ли лучшая, возможно, более короткая и краткая версия?
— Джон

Я не знаю ни одной документации, и я не уверен, какие дополнительные сложности (то есть другие критерии, кроме идентификационного номера) могут быть, что это не обрабатывает. Более полная версия не будет короче, вероятно, будет немного длиннее.
— Гордон Дэвиссон

Что будет делать более полная версия? Спасибо всем за информацию.
— Джон
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.