シェルでは $0 で実行したスクリプトファイルのパスが取れる。ここでスクリプト名だけを切り出したときはどうすればよいか。basename というコマンドを使うと切り出せる。また指定したサフィックスを取り除くことができる。
bash だとパターンマッチによる切り出しができる。

#!/bin/bash base=${0##*/} echo $base echo basename $0 echo ${base%.sh}
echo basename $0 .sh

を実行すると、

$ /home/toshi/shell/hoge.sh hoge.sh hoge.sh hoge hoge $ ./hoge.sh hoge.sh hoge.sh hoge hoge

となる。
※スクリプト名を切り出して何に使うのか。
 ⇒例えば view と vi のように実行名によって動作を変えるときなんかに使います。