这是简洁的 Bash Programming 技巧系列的第三篇文章,这一系列的文章专门介绍Bash编程中一些简洁的技巧,帮助大家提高平时 Bash 编程的效率。有兴趣的同学可以回顾下之前的两篇文章(一)和续篇。
1. 替换语法${parameter/pattern/string}的妙用
${parameter/pattern/string}
将parameter中匹配pattern的部分替换成string,例如下面的例子将字符串中的e替换成x:
$ str="three"
$ echo "${str/e/x}" # thrxe
如果pattern部分以/开头,表示替换parameter中所有匹配的内容,例如:
$ str="three"
$ echo "${str//e/x}" # thrxx
如果pattern部分以#开头,表示仅当parameter开始处匹配pattern的时候替换,例如:
str="three"
$ echo "${str/#e/x}" # three
$ echo "${str/#t/x}" # xhree
与此对应地是,如果pattern部分以%开头,表示仅当parameter结尾处匹配pattern的时候替换,例如:
$ str="three"
$ echo "${str/%e/x}" # threx
如果string部分为空,匹配pattern的部分被删除(替换为空),例如:
$ str="three"
$ echo "${str/h/}" # tree
继续阅读