1、${parameter} 说明:返回变量$parameter的内容
举例:
[beifeng@hadoop1-senior yanls]$ parameter="I Love Hadoop"
[beifeng@hadoop1-senior yanls]$ echo "${parameter}"
I Love Hadoop
2、${#parameter} 说明:返回变量$parameter内容的长度(按字符),也适用于特殊变量
举例:
[beifeng@hadoop1-senior yanls]$ echo "${#parameter}"
13
3、${parameter:offset} 说明:在变量${parameter}中,从位置offset之后开始提取子串到结尾
举例:
[beifeng@hadoop1-senior yanls]$ echo "${parameter:2}"
Love Hadoop
4、${parameter:offset:length} 说明:在变量${parameter}中,从位置offset之后开始提取长度为length的子串
举例:
[beifeng@hadoop1-senior yanls]$ echo "${parameter:2:4}"
Love
5、${parameter#word} 说明:从变量${parameter}开头开始删除最短匹配的word子串
举例:
[beifeng@hadoop1-senior yanls]$ parameter="abcABCabcABC"
[beifeng@hadoop1-senior yanls]$ echo ${parameter#a*c}
ABCabcABC
6、${parameter##word} 说明:从变量${parameter}开头开始删除最长匹配的word子串
举例:
[[beifeng@hadoop1-senior yanls]$ echo ${parameter##a*c}
ABC
7、${parameter%word} 说明:从变量${parameter}结尾开始删除最短匹配的word子串
举例:
[beifeng@hadoop1-senior yanls]$ echo ${parameter%a*C}
abcABC
8、${parameter%%word} 说明:从变量${parameter}结尾开始删除最长匹配的word子串
举例:
[beifeng@hadoop1-senior yanls]$ echo ${parameter%%a*C}
9、${parameter/pattern/string} 说明:使用String代替第一个匹配的pattern
举例:
[beifeng@hadoop1-senior yanls]$ echo "${parameter/Love/hate}"
I hate Hadoop
[beifeng@hadoop1-senior yanls]$ echo "${parameter/o/q}"
I Lqve Hadoop
10、${parameter//pattern/string} 说明:使用String代替所有匹配的pattern
举例:
[beifeng@hadoop1-senior yanls]$ echo "${parameter//o/q}"
I Lqve Hadqqp
[beifeng@hadoop1-senior yanls]$ parameter="abcABCabcABC"
[beifeng@hadoop1-senior yanls]$ echo ${parameter#a*c}
ABCabcABC