Каков идентификатор группы этого названия группы?

Как получить идентификатор группы GID, дающий название группы.

Вывод был бы, например:

Group adm with GID=4
25
задан 30 June 2015 в 03:48

5 ответов

Взлом для необходимого: (все еще, возможно, существует намного лучший ответ)

awk -F\: '{print "Group " $1 " with GID=" $3}' /etc/group | grep "group-name"

Более простая версия (Благодаря @A.B):

awk -F\: '/sudo/ {print "Group " $1 " with GID=" $3}' /etc/group 

Пример:

$ awk -F\: '{print "Group " $1 " with GID=" $3}' /etc/group | grep sudo 
Group sudo with GID=27
0
ответ дан 23 November 2019 в 01:10

Используйте getent команда для обработки групп и информации о пользователе, вместо того, чтобы вручную читать /etc/passwd, /etc/groups и т.д. Сама система использует /etc/nsswitch.conf для решения, откуда она получает свою информацию, и настройки в файлах могут быть переопределены другими источниками. getent повинуется этой конфигурации. getent данные печати, неважно, источник, в том же формате как файлы, таким образом, можно тогда проанализировать вывод тем же путем, Вы проанализировали бы /etc/passwd:

getent group sudo | awk -F: '{printf "Group %s with GID=%d\n", $1, $3}'
<час>

Примечание, что, для имени пользователя, это намного более легче. Используйте id :

$ id -u lightdm
105
39
ответ дан 23 November 2019 в 01:10

Это может быть просто сделано с cut:

$ cut -d: -f3 < <(getent group sudo)
27

getent group sudo получит строку относительно sudo группа от /etc/group файл:

$ getent group sudo
sudo:x:27:foobar

Тогда мы можем просто взять третье поле, разграниченное :.

, Если Вы хотите выходную строку соответственно, используйте замену команды в echo:

$ echo "Group sudo with GID="$(cut -d: -f3 < <(getent group sudo))""
Group sudo with GID=27
20
ответ дан 23 November 2019 в 01:10

Используя perl острота:

% perl -ne '@elements=(split /:/); printf "Group %s with GID=%s\n",$elements[0],$elements[2]' <<< $(getent group sudo)
Group sudo with GID=27

или короче (и лучше)

% perl -F/:/ -ane 'printf "Group %s with GID=%s\n",$F[0],$F[2]' <<< $(getent group sudo)
Group sudo with GID=27
0
ответ дан 23 November 2019 в 01:10

более сложные ответы всегда ценятся - я узнаю о так много из чтения их вполне честно.

я натолкнулся на эту страницу, потому что я искал идентификатор группы своей почтовой группы и не знал, где та информация хранилась.

Ваши ответы являются большими - вот простой, который я придумал

кошка def@fourof4:/home$/etc/group | grep почта mail:x:8:

я знаю, что это не улаживает идентификатор, но это служило моей цели.

Попытка Блока цитирования это: awk-F: '/sudo/{печатают "Группу "1$ "с GID =" 3$}'/etc/group †“A.B. 23 июня '15 в 15:51 Блок цитирования

я вижу это также упомянутое помимо того, которое я заключил в кавычки...., все получают мою любовь - извините, если я скучал по Вам

, это - то, что вело меня в тот файл.
Спасибо и продолжает подавать меня превосходное в любой форме, которой Вы желаете! определение

1
ответ дан 23 November 2019 в 01:10

Другие вопросы по тегам:

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