コマンドでグループ名を取得したい。そしてユーザーが該当グループに属しているか調べたい。そこでユーザーのメタ情報表示するコマンドを集めてみました.
groups使って所属グループ一覧
takuya@debian00:~$ groups takuya admin takuya@debian00:~$
メインのグループを表示したいときは
takuya@debian00:~$ id uid=1000(takuya) gid=1000(takuya) 所属グループ=1000(takuya),1001(admin) takuya@debian00:~$
グループの操作はこんな感じ
man -k group したらこんだけコマンドが見つかった
group.5 group - ユーザーグループのファイル groupadd.8 groupadd - 新しいグループを作成する groupdel.8 groupdel - グループを削除する groupmod.8 groupmod - グループを修正する groups.1 groups - 現在のグループ名の表示 grpck.8 grpck - グループファイルが正しいかどうか検査する
ユーザーがAdminに所属しているかはわからない
ユーザーが所属しているかを調べるコマンドはなかった.それらコマンドを組み合わせて、調べてみることにする.
ユーザーが或るグループに所属するかはどうやって調べる?
シェルスクリプト苦手だから分らんけど見よう見まねでやってみた
for i in `groups`;do if test $i = "Users" ; then echo $i found.; fi ;done
TakuyaさんがUsersに所属すれば found 見つからなければ何もしない.こんな感じです.
ユーザがwheelに所属するかは
for i in `groups atsushi `;do if test $i = "wheel" ; then echo $i found.; fi ;done
で見ることが出来ます.
ただし /etc/passwd 、 /etc/groups を参照権限ないと groupsは id番号を返す。なので文字による比較は難しい