はじめに
とある Vagrantfile を読んでいると、id
コマンドが使われていました。
用途としては、Provisioning が rootユーザで実行されているかをチェックしていました。
気になったので、id コマンドの使い方を改めて勉強しました。
使い方
rootユーザで試してみます。
$ whoami root
-u
オプションでは、ログインしているユーザの、ユーザIDを表示します。
$ id -u 0
-g
オプションでは、ログインしているユーザの、グループIDを表示します。
$ id -g 0
-G
オプションでは、所属しているグループを表示します。
$ id -G 0
-n
オプションでは、IDの代わりにユーザ名を表示します。
$ id -u -n root
-un
のように指定することもできます。
$ id -un root
-r
オプションでは、実際のユーザID、およびグループIDを表示できます。
$ id -u -r 0
username
をつけると、指定したユーザのユーザID、およびグループIDを表示できます。
$ id -u root 0
複数の情報を同時に表示することはできないようです。
$ id -u -g id: cannot print "only" of more than one choice
情報をすべて表示したければ、id
コマンドをNoオプションで実行すればよいです。
$ id uid=0(root) gid=0(root) groups=0(root)
if文
を使って、こんな風に使うことができます。
if [ `id -u` -ne 0 ]; then echo "You are not 'root' user." fi
以上です。