Скрипт оболочки для списка пользователей по группам
Я хочу написать сценарий оболочки, который генерирует список пользователей. для каждого пользователя отобразить имя пользователя и идентификатор, а также все группы, в которые входит пользователь
это похоже на команду GROUPS, но для всех пользователей и их идентификаторов я использовал cat -d: -f1,3 /etc/passwd, чтобы показать пользователям их идентификаторы, но я не знаю, как я могу использовать группы для каждой строки
не могли бы вы помочь мне написать этот сценарий спасибо
1 ответ
Решение
Используйте этот скрипт:
#! /bin/bash
#
for i in $(cat /etc/passwd | cut -d: -f1); do
echo -n $i ": "
grep $i /etc/group | cut -d: -f1 | tr "\n" " "
echo
done
Он перечислит всех пользователей в системе (включая систему) и распечатает список групп рядом с ними. С тривиальной модификацией вы также можете распечатать числовой идентификатор.