which コマンドの実装2
要件定義/目的: 環境変数 PATH からコマンドの絶対パスを取得する
自己アピール: なし(単なる意地)
コメント: シェルスクリプトで書いた方がやっぱり簡単
$ which_bash() { echo $PATH | awk 'BEGIN{RS=":"} {print}' | while read f; do find $f -name $1 -perm +111; done | head -1; }
- 実行結果
$ echo $PATH /usr/kerberos/bin:/bin:/usr/bin:/usr/local/bin:/usr/lib/qt3/bin:/sbin:/usr/sbin:/usr/local/sbin:/usr/local/bin $ which_bash which /usr/bin/which $ which_bash ls /bin/ls $ which_bash xgawk /bin/xgawk $ ls -al /usr/local/bin/fake_cmd -rw-r--r-- 1 root root 0 2008-04-09 08:12 /usr/local/bin/fake_cmd $ which_bash fake_cmd $