下面的正则表达式是什么意思?
fspec="/exp/home1/abc.txt"
fname="${fspec##*/}"
我知道它是做什么的,但不知道它是怎么做的?我不清楚获取 fname。
请解释。
最佳答案
${var##*/>
语法将所有内容剥离到最后一个 /
。
$ fspec="/exp/home1/abc.txt"
$ echo "${fspec##*/}"
abc.txt
通常,${string##substring}
会从 $string
的前面去除最长的 $substring
匹配。
如需进一步引用,您可以查看 Bash String Manipulation有几个解释和例子。
关于regex - 正则表达式的解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21777350/