シェルスクリプトで、自分自身のスクリプトの絶対パスを取得する方法ですが、下記のようにするといいようです。
#!/bin/sh
echo $(cd $(dirname $0);pwd)
echo $(cd $(dirname $0) && pwd)/$(basename $0)
結果:
/root/sh
/root/sh/test01.sh
ちなみに、これで知ったのですが、「$()」でコマンドの実行結果を取れるようです。「``」と同じ意味みたいです。
「$()」のほうがネストが効くので使いやすいかもしれません。
参考: