温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

shell脚本字符串截取的多种方法

发布时间:2020-08-17 06:35:45 来源:网络 阅读:585 作者:小镇青苔 栏目:网络安全


1、cut命令

cut命令主要是接受三个定位方法:

第一,字节(bytes),用选项-b

第二,字符(characters),用选项-c

第三,域(fields),用选项-f

str="abchyew2635"
echo $str|cut -c 6-9

结果:

yew2


2、# 号截取,删除左边字符,保留右边字符  

var="hello world"                    
echo ${var#*l}
结果:
lo world

其中 var 是变量名,# 号是运算符,*l 表示从左边开始删除第一个 l及左边的所有字符
即删除 hel      

                                                                                              

3、## 号截取,删除左边字符,保留右边字符。

 var="hello world"
 echo ${var##*l}
 结果:
 d


##*l 表示从左边开始删除最后(最右边)一个l及左边的所有字符
即删除 hello worl


4、%号截取,删除右边字符,保留左边字符

var="hello world"
echo ${var%l*}
结果:
hello wor


%l* 表示从右边开始,删除第一个l及右边的字符

即删除d


5、%% 号截取,删除右边字符,保留左边字符

var="hello world"
 echo ${var%%l*}
 结果:
 he


%%l* 表示从右边开始,删除最后(最左边)一个l及右边的字符

即删除llo world


6、从左边第几个字符开始,及字符的个数

var="hello world"
echo ${var:0:3}
结果:
hel



其中的 0 表示左边第一个字符开始,3表示字符的总个数。


7、从左边第几个字符开始,一直到结束。

var="hello world"
echo ${var:2}
结果:
llo world


其中的 2表示左边第3个字符开始,一直到结束。


8、从右边第几个字符开始,及字符的个数

var="hello world"
echo ${var:0-2:3}
结果:
ld


其中的 0-2 表示右边算起第二个字符开始,3 表示字符的个数。


9、从右边第几个字符开始,一直到结束。

var="hello world"
echo ${var:0-2}
结果:
ld


表示从右边第二个字符开始,一直到结束。


总代码:

#!/bin/bash
var="hello world"
echo ${var#*l}
echo ${var##*l}
echo ${var%l*}
echo ${var%%l*}
echo ${var:0:3}
echo ${var:2}
echo ${var:0-2:3}
echo ${var:0-2}


[fbl@www test6_16]$ ./string.sh 
lo world
d
hello wor
he
hel
llo world
ld
ld


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI