それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

id コマンドの group 版。グループに所属しているユーザの一覧を取りたい

id コマンドで、ユーザーの詳細が出せますよね

$ id www-data
uid=33(www-data) gid=33(www-data) groups=33(www-data)

id コマンドを使えば、ユーザがどのグループ、サブグループに所属しているか確認できます。

では、group を確認するにはどうすれば。

$ group www-data
bash: group: コマンドが見つかりません

そうなんですよ~。グループ名から、所属しているユーザー名をリストする方法がわからないんです。

groups コマンドは引数がユーザー名で、ユーザが所属しているグループを表示するだけで、 id コマンドと変わらないし

仕方ないので getent する

getent を alias するしかなかった。

$ alias group="getent group | /bin/grep "

alias しておけば

$ group www-data
www-data:x:33:takuya,daapd

表示することが出来る。

なぜ、getentをするのか。認証は/etc/{passwd,group}で管理されていると限らないからですね。

2016-05-21 追記

grep いらなかった。

getent group www-data

で絞り込みできたんだった。

alias group="getent group "

実際にヤってみた例

takuya@atom:~$ sudo getent group www-data
www-data:x:33:takuya,daapd
takuya@atom:~$ sudo getent group  sudo
sudo:x:27:takuya