shell模式匹配运算符作用,在哪些环境中使用?例如 ${path#.*} ${path...
发布网友
发布时间:2022-04-30 08:35
我来回答
共1个回答
热心网友
时间:2022-04-23 09:21
首先,${path#.*} ${path##.*} ${path%.*} ${path%%.*}是bash字符串处理命令,一般shell并不提供。
其次,${path#.*} ${path##.*} ${path%.*} ${path%%.*}中.及*为shell通配符,shell通配符是一种特殊shell元字符,主要用于匹配文件名,有时也用来匹配字符串,比如case语句以及bash字符串处理。shell通配符主要包括.,*,[...],[!...],{...}(逗号为分隔符,具体请自行查询)。shell通配符在shell命令行中均可使用。shell解释命令行时会先搜索元字符,处理元字符,再搜索命令,执行命令(准确地说,是内核执行命令)。
最后,请区分shell通配符与正则表达式。后者非常强大,在grep/sed/awk/perl等中经常使用。