Shell脚本文件名格式

下面的shell脚本是什么意思? 这是ksh,npfile也是一个包含文件名的variables。

fileName=${npFile##/*/} 

它将文件的path剥离出来。 在variables扩展中,##表示“把事情放在我的右边,把它当作一个模式,并把它在我左边的variables中的最长匹配删除”。

在这种情况下,模式是/ * /,所以包含path和文件名的variables中最长的匹配就是path。 删除它只会留下文件名。

这似乎是写这个variables的唯一方法:

 filename=`basename $npFile` 

修剪“/ * /”(从第一个斜杠到最后一个斜杠的所有内容)。

所以如果npFile =“/ path / to / file” – fineName会变成“file”