shell脚本----shell的字符串截取
程序员文章站
2022-07-14 17:53:57
...
在这里总结一下shell脚本的字符串截取方式
以字符串 str=”1:2:3:4:abcd” 为例
1. # 截取,删除左边字符,保留右边字符
#!/bin/bash
str="1:2:3:4abcd"
echo ${str#*:}
str为要截取的字符串,#为运算符,*:表示从左边开始删除第一个:及它左边的所有内容
所以结果如下:
2. # # 截取,删除左边字符,保留右边字符
#!/bin/bash
str="1:2:3:4abcd"
echo ${str##*:}
##*: —–>表示删除最右边即最后一个冒号及其左边的所有内容
3. %截取,删除右边字符,保留左边字符
#!/bin/bash
str="1:2:3:4abcd"
echo ${str%:*}
%:* 表示从右边开始删除第一个:及其右边的所有内容
4. % %截取,删除右边字符,保留左边字符
#!/bin/bash
str="1:2:3:4abcd"
echo ${str%%:*}
%%:* 表示从右边开始删除最后一个:及其右边的所有内容
5. 从左边第几个字符开始,及字符的个数
#!/bin/bash
str="1:2:3:4abcd"
echo ${str:0:5}
其中0表示从第一个字符开始,5为字符总个数,即截取前五个字符
6. 从右边第几个字符开始,及字符的个数
#!/bin/bash
str="1:2:3:4abcd"
echo ${str:0-5:3}
其中0-5表示从右边第五个字符开始向右截取,3为截取字符个数
7. 从左边第几个字符开始一直到结束
#!/bin/bash
str="1:2:3:4abcd"
echo ${str:6}
其中6表示从第七个字符开始一直到结束位置
8. 从右边第几个字符开始一直到结束
#!/bin/bash
str="1:2:3:4abcd"
echo ${str:0-5}
其中0-5表示从右边第5个字符开始一直到结束位置
注:左边的第一个字符用0表示,右边的第一个字符用0-1表示