bash模式和模式匹配
- ${variable#pattern}
如果模式匹配变量取值的开头,删除最短匹配部分,返回其余部分 - ${variable##pattern}
如果模式匹配变量取值的开头,删除最长匹配部分,返回其余部分 - ${variable%pattern}
如果模式匹配变量取值的结尾,删除最短匹配部分,返回其余部分 - ${variable%%pattern}
如果模式匹配变量取值的结尾,删除最长匹配部分,返回其余部分
一个处理文件的样例:
${path} = /home/fuzl/book/long.file.name
${path##/*/} = long.file.name
${path#/*/} = fuzl/book/long.file.name
${path%%.*} = /home/fuzl/book/long
${path%.*} = /home/fuzl/book/long.file