这篇文章给大家介绍怎么在Linux中使用Shell 截取字符串,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
shell中截取字符串的方法很多
${var#*/}${var##*/}${var%}echo "substr : [${substr}]"
执行结果:
string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [/www.fengbohello.xin3e.com/blog/shell-truncating-string]
2) ## 最大限度从前面截取word
语法:
${parameter##word}
示例代码:
str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#分割符为'/'substr=${str##*/}echo "substr : [${substr}]"
执行结果:
string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [shell-truncating-string]
--------------------------------------------------------------------------------
3) 使用 % 和 %% 获取头部子字符串
1) % 最小限度从后面截取word
语法:
${parameter%word}
示例代码:
str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"substr=${str%/*}echo "substr : [${substr}]"
执行结果:
string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [http://www.fengbohello.xin3e.com/blog]
2) %% 最大限度从后面截取word
语法:
${parameter%%word}
示例代码:
str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"substr=${str%%/*}echo "substr : [${substr}]"
执行结果:
string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [http:]
--------------------------------------------------------------------------------
4)使用 ${var:} 模式获取子字符串
1) 指定从左边第几个字符开始以及子串中字符的个数
语法:
${var:start:len}
示例代码:
str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#其中的 0 表示左边第一个字符开始,7 表示子字符的总个数。substr=${str:0:7}echo "substr : [${substr}]"
执行结果:
string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [http://]
2) 从左边第几个字符开始一直到结束
语法:
${var:7}
示例代码:
str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#其中的 7 表示左边第8个字符开始substr=${str:7}echo "substr : [${substr}]"
执行结果:
string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [www.fengbohello.xin3e.com/blog/shell-truncating-string]
3) 从右边第几个字符开始以及字符的个数
语法:
${var:0-start:len}
示例代码:
str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#其中的 0-23 表示右边算起第23个字符开始,5 表示字符的个数substr=${str:0-23:5}echo "substr : [${substr}]"
执行结果:
string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [shell]
4) 从右边第几个字符开始一直到结束
语法:
${var:0-start}
示例代码:
str="http://www.fengbohello.xin3e.com/blog/shell-truncating-string"echo "string : [${str}]"#其中的 0-6 表示右边算起第6个字符开始substr=${str:0-6}echo "substr : [${substr}]"
执行结果:
string : [http://www.fengbohello.xin3e.com/blog/shell-truncating-string]substr : [string]
关于怎么在Linux中使用Shell 截取字符串就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。