Bash 中常见的字符串操作

前端之家收集整理的这篇文章主要介绍了Bash 中常见的字符串操作前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

获取字符串长度

MyString= ${#MyString} # 结果为

自动去掉字符串结尾处的空格,如果在字符串中包含空格(开头、中间或结尾),就需要使用引号把字符串包裹起来:

MyString= ${#MyString} # 结果为

MyString= $( match ) # 结果为

MyString= $( index C12) # ,注意:索引是从 开始的。

提取子串

提取子串。提取从位置 $position 开始的位置参数。提取 $length 长度的子串。

MyString= ${MyString:} # ABC123ABCabc,注意:此时索引是从 ${MyString::<span style="color: #0000ff">echo ${:<span style="color: #800080">2} # 打印出第 <span style="color: #800080">2<span style="color: #000000"> 个和后边所有的位置参数。
<span style="color: #0000ff">echo
${@:<span style="color: #800080">2
<span style="color: #000000">} # 同上。
<span style="color: #0000ff">echo
${:<span style="color: #800080">2:<span style="color: #800080">3} # 从第 <span style="color: #800080">2 个开始,连续打印 <span style="color: #800080">3 个位置参数。

提取 $substring,$substring 是正则表达式。

MyString= $( match ) # abcABC1

删除子串

MyString= ${MyString#a*<span style="color: #0000ff">echo ${MyString##a*<span style="color: #000000">C} # abc

截掉 <span style="color: #800000">'<span style="color: #800000">a<span style="color: #800000">' 到 <span style="color: #800000">'<span style="color: #800000">C<span style="color: #800000">' 之间最长的匹配字符串。

MyString= ${MyString%b*<span style="color: #0000ff">echo ${MyString%%b*<span style="color: #000000">c} # a

从 $MyString 的结尾位置截掉 <span style="color: #800000">'<span style="color: #800000">b<span style="color: #800000">' 到 <span style="color: #800000">'<span style="color: #800000">c<span style="color: #800000">' 之间最长的匹配。

文件名的时候,这个操作就显得特别有用。

MyString= ${MyString/abc/ ${MyString/ABC/<span style="color: #0000ff">echo ${MyString<span style="color: #008000">//<span style="color: #008000">abc/xxx} # xxxABC123ABCxxx
<span style="color: #0000ff">echo
${MyString<span style="color: #008000">//<span style="color: #008000">ABC/XXX} # abcXXX123XXXabc

替换所有匹配到的子串。

MyString= ${MyString/#abc/ 替换开头的 <span style="color: #0000ff">echo ${MyString/%abc/<span style="color: #000000">XXX} # abcABC123ABCXXX

用 <span style="color: #800000">'<span style="color: #800000">XXX<span style="color: #800000">' 替换结尾的 <span style="color: #800000">'<span style="color: #800000">abc<span style="color: #800000">'。

参考:文件中指定字符串的方法

猜你在找的Bash相关文章