シェルスクリプトで変数展開するときに、時々見る%(#)記号...
qiitaで探しづらかったのでメモ
%と%%はどちらもsuffic除去、#と##はどちらもprefix除去ですが
記号が一つだとshortest match、記号が二つだと longest matchが適用されるらしい。
$ var="abcdefdefghi"
$ echo $var
abcdefdefghi
$ echo ${var#*def}
defghi
$ echo ${var##*def}
ghi
$ echo ${var%def*}
abcdef
$ echo ${var%%def*}
abc
補足(蛇足?)
##や%%のようなものはググラビリティが低いので、全然検索に引っかからない...
qiitaではタグに記載されていると検索可能らしいので、実験もかねて##と%%をタグに含めました。