https://scz.617.cn/unix/201612071852.txt
Q:
${0##*/}什么意思?
A: scz 2016-12-07
其语法是
${parameter#word} ${parameter##word}
删除匹配的prefix pattern
word指定prefix pattern,使用pathname expansion格式,不是正则表达式。
在${parameter}中寻找prefix pattern,并删除之
进行最短匹配,##进行最长匹配
如果${parameter}是数组,将依次处理每个元素
$ var="foo/bar/baz"
$ echo ${var#*/} bar/baz
$ echo ${var##*/} baz
$ echo $(basename $var) baz
与之类似的还有
${parameter%word} ${parameter%%word}
删除匹配的suffix pattern
$ echo ${var%/*} foo/bar
$ echo ${var%%/*} foo
$ echo $(dirname $var) foo/bar