回答:
このgroups
コマンドは、システムで使用可能なすべてのグループではなく、ユーザーが現在メンバーであるグループを一覧表示します。getent
コマンドを使用して、名前またはgidでグループを検索できます。
getent group oinstall
getent group 500
すべてのグループを表示するには、コマンドから検索クエリを除外します。
getent group
を使用してグループを一覧表示できます。getent
存在しない場合は、/etc/group
コマンドを実行すると、GIDは出力の3番目の値になります。例:
$ getent group
man:x:15:
audio:x:63:
nobody:x:99:
users:x:100:
<--snipped-->
utmp:x:22:
したがって、グループ名とそのGIDのみをリストするawk
には、次のように使用して列を印刷します。
$ getent group | awk -F ":" '{ print $1,$3 }'
man 15
audio 63
nobody 99
users 100
<--snipped-->
utmp 22
http://man7.org/linux/man-pages/man1/getent.1.htmlも参照してください
getent
存在しない場合。
$ grep $group /etc/group
GIDは、出力の3番目の値です。例えば
$ grep users /etc/group
users:x:100:
上記では、グループユーザーのGIDは100です。グループ名とGIDのみを取得するには、次のようにawkとgrepを使用できます。
$ cat /etc/group | awk -F ":" '{ print $1,$3 }'
man 15
audio 63
nobody 99
users 100
<--snipped-->
utmp 22
外部認証(LDAPなど)を使用するようにセットアップされたシステムでは、すべてのグループが/ etc / groupファイルに存在しないことに注意してください。http://www.cyberciti.biz/faq/understanding-etcgroup-file/も参照してください。
/etc/group
。NIS、LDAPなどに保存できます
getent group
。
groups
コマンドで表示されるようにする必要があります。