变量子串的常用操作
${#string} 返回$string的长度
${string:position} 在$string中,从位置$position之后开始提取子串
$(string:position:length) 在$string中,从位置$position之后开始提取长度为$length的子串
${string#substring} 从变量$string开头开始删除最短匹配$substring子串
$(string##substring) 从变量$string开头开始删除最长匹配$substring子串
${string%substring} 从变量$string结尾开始删除最短匹配$substring子串
${string%%substring} 从变量$string结尾开始删除最长匹配$substring子串
${string/substring/replace} 使用$replace,来代替第一个匹配的$substring
${string/#substring/replace} 如果$string前缀匹配$substring,就用$replace来代替匹配$substring
依次举例说明:
定义xcn变量,内容为“i am xcn”
[root@XCN~]#xcn="iamxcn"[root@XCN~]#echo${xcn}iamxcn
1)返回字符串xcn变量字符串的长度
[root@XCN~]#echo${#xcn}8
思路 : echo $xcn|wc -m
[root@XCN~]#echo$xcn|wc-L8
2)截取xcn变量字符串从第2个字符之后开始截取,默认取后面字符的全部,第2个字符不包含在内。也可理解为删除前面的多少个字符。
[root@XCN~]#echo${xcn:2}amxcn
3)截取xcn变量字符串从第2个字符之后开始取,取两个字符
[root@XCN~]#echo${xcn:2:2}am提示:类似cut-c参数[root@XCN~]#echo${xcn}|cut-c1-4iam[root@XCN~]#echo${xcn}|cut-c3-4am
4)从变量$xcn开头开始删除最短匹配"i am"子串
[root@XCN~]#echo${xcn#iam}xcn
5)从变量$xcn开头开始删除最长匹配"i am old"子串
[root@XCN~]#echo${xcn##iamx}cn
6)从变量$xcn结尾开始删除最短匹配xcn子串
[root@XCN~]#echo${xcn%xcn}iam[root@XCN~]#echo${xcn#iam}xcn
7)从变量$xcn结尾开始删除最长匹配boy子串
[root@XCN~]#echo${xcn%%xcn}iam
8)使用baishuchao字符串,来替换变量xcn第一个匹配的xcn字符串
[root@XCN~]#echo${xcn/xcn/baishuchao}iambaishuchao
10)使用he is 字符串,来代替从变量$xcn开头开始匹配的i am字符串
[root@XCN~]#echo${xcn/#iam/heis}heisxcn提示:统一规律#从开头开始,%从结尾开始
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。