linux 变量子串,shell脚本中变量子串的常用操作

字符串操作

${#string}输出字句的字符个数

${string:position:length}输出$position开始的length长度的字符

${string:position}[root@ilove scripts]# liuyifei="i like sanpan i like luo swimming"

[root@ilove scripts]# echo ${#liuyifei}

33

[root@ilove scripts]# echo ${liuyifei:2:4}

like

[root@ilove scripts]# echo ${liuyifei:2}

like sanpan i like luo swimming

====以上实测

${string#substring}从string中从前往后检索,只要匹配到字符就开始删除最短匹配

${string##substring}从头匹配,开始最长删除

${string%substring}从结尾开始

${string%%substring}从结尾开始,类似以上##

======以上必须必须从一开始就匹配上

[root@ilove scripts]# echo ${liuyifei#like}

i like sanpan i like luo swimming

[root@ilove scripts]# echo ${liuyifei#*like}

sanpan i like luo swimming

[root@ilove scripts]# echo ${liuyifei##*like}

luo swimming

[root@ilove scripts]# echo ${liuyifei%*like}

i like sanpan i like luo swimming

[root@ilove scripts]# echo ${liuyifei%like}

i like sanpan i like luo swimming

[root@ilove scripts]# echo ${liuyifei%like*}

i like sanpan i

[root@ilove scripts]# echo ${liuyifei%%like*}

i

========================

${string/substring/replace}替换第一个遇到的匹配的字符

${string/#substring/replace}前缀匹配,必须全部匹配上,替换一长条

${string/%substring/replace}从后往前,替换最后一个遇到的匹配字符,必须全部匹配

[root@ilove scripts]# echo ${liuyifei/like/love}

i love sanpan i like luo swimming

[root@ilove scripts]# echo ${liuyifei/#*like/love}

love luo swimming

[root@ilove scripts]# echo ${liuyifei/%like*/love}

i love

个人总结:在shell变量操作中 出现# % 就必须一直予以匹配才能进行相关操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值