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

shell 变量的高级用法

时间:2019-06-21 23:55:05      阅读:323      评论:0      收藏:0      [点我收藏+]

标签:bin   字符串处理   定义   shell   变量   高级用法   inf   抽取   索引   

 变量删除和替换

 

技术图片

 

案例:从头开始匹配,将符合最短的数据删除 (#

variable_1="I love you, Do you love me"
echo $variable_1
variable_2=${variable_1#*ov}
echo $variable_2

  

 技术图片

 

案例:从头开始匹配,将复合最短的数据删除(##

varible_3=${variable_1##*ov}
echo $varible_3

技术图片

 

案例:替换字符串,只替换第一次匹配成功的(/

echo $PATH
var6=${PATH/bin/BIN}
echo $var6

  

技术图片

 

案例:替换字符串,符合条件的全部替换 (//

var7=${PATH//bin/BIN}
echo $var7

  

 技术图片

 

 变量测试

技术图片

 简单举例(用的比较少)

var=${str-expr} 

  

如果变量 str 没有定义,那么var=expr

如果变量 str的字符串中有值,那么 变量 var 的值就等于 str变量的值

技术图片

 

 字符串处理

 

 计算字符串的长度

技术图片

案例1

var="hello world"
len=${#var}
echo $len

  

 技术图片

案例2

var1="zhang biao"
len=`expr length "$var1"`
echo $len

技术图片

 

获取字串在字符串中的索引位置 (把字串拆分成一个个的字串,最先匹配到的第一个就会返回)

 技术图片

案例

 

 技术图片

 

计算字串的长度 (只能从头开始匹配,用的不多)

 技术图片

 例子:找不到返回 0,不是从头开始匹配

var="quickstart is a app"
sub_len=`expr match "$var1" app` 
echo $sub_len

 

技术图片

 

 从头开始匹配

sub_len=`expr match "$var" quick*`
echo $sub_len

技术图片

 

sub_len=`expr match "$var" quick.*`
echo $sub_len

  

技术图片

 

 抽取字串

 技术图片

 

shell 变量的高级用法

标签:bin   字符串处理   定义   shell   变量   高级用法   inf   抽取   索引   

原文地址:https://www.cnblogs.com/crazymagic/p/11067147.html

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