码迷,mamicode.com
首页 > 系统相关 > 详细

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

时间:2016-07-07 22:43:54      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:liuyifei   position   swimming   字符串   

字符串操作

    ${#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变量操作中 出现# % 就必须一直予以匹配才能进行相关操作

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

标签:liuyifei   position   swimming   字符串   

原文地址:http://singler.blog.51cto.com/3984787/1812414

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!