shell脚本实现字符串截取

时间:2024-03-14 08:24:43

shell脚本截取字符串有8种方法:
1.# 号截取,删除左边字符,保留右边字符。

代码:
ch=abcd1234
echo ${ch#*d}

其中 ch 是变量名,# 号是运算符,*d 表示从左边开始删除第一个 字符d 及左边的所有字符
结果是 :1234
shell脚本实现字符串截取

2.## 号截取,删除左边字符,保留右边字符。
代码:echo ${ch##*,}
##*, 表示从左边开始删除最后(最右边)一个 , 号及左边的所有字符。

shell脚本实现字符串截取

3.%号截取,删除右边字符,保留左边字符。
代码:echo ${var%,*}
%/* 表示从右边开始,删除第一个, 号及右边的字符。
shell脚本实现字符串截取
4.%% 号截取,删除右边字符,保留左边字符。
代码:echo ${var%%/*}
%%/* 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符。
shell脚本实现字符串截取
5.从左边第几个字符开始,及字符的个数。
代码: ${var:0:7}
其中的 0 表示左边第一个字符开始,7 表示字符的总个数。
shell脚本实现字符串截取
6.从左边第几个字符开始,一直到结束。
代码:echo ${var:7}
其中的 8 表示左边第9个字符开始,一直到结束。
shell脚本实现字符串截取
7.从右边第几个字符开始,及字符的个数。
代码:${var:0-11:3}
其中的 0-11 表示右边算起第11个字符开始,3 表示从左边的3个字符。
shell脚本实现字符串截取
8.从右边第几个字符开始,一直到结束。
代码:echo ${var:0-7}
表示从右边第七个字符开始,从左往右一直到结束。
shell脚本实现字符串截取