$ {file ## * /}中## * /表示什么?

时间:2014-02-11 18:06:25

标签: bash

我最近遇到过这样的事情

for file in *.sql; do echo ${file##*/}; done

并且无法弄清楚##*/的含义。它没有做任何(显着)与此不同的事情

for file in *.sql; do echo ${file}; done

因此很难弄清楚其目的。 Online searches have not turned up anything

1 个答案:

答案 0 :(得分:-1)

${file##*/};删除从字符串开始到斜杠的最长匹配。有关此问题,请参阅this manual以获取帮助和示例。

根据手册:

  

从$ string前面删除$ substring的最长匹配。