はじめに
シェルスクリプトにて実行ユーザを限定したいプログラムを作成する際に書いたコードです。
方法
1 2 3 4 5 6 7 8 | #---------------------------------------------- # 実行時のユーザを確認 #---------------------------------------------- if [[ `whoami` != "root" ]] then echo "rootユーザで実行してください。" exit 1 fi |
whoami直訳で「私はだれ?」だと思いますが、現在の(コマンドを実行した)ユーザー名を表示するコマンドです。 whoamiコマンドの実行結果が目的のユーザーであるかをif文で条件分岐しているだけです。rootでなければ戻り値1でプログラムをexitします。rootの部分を目的のユーザーに変えればそれで完了です。実行ユーザーによって処理を分けたりすることにも使えます。
以上です。