shell 变量的高级用法

Posted crazymagic

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell 变量的高级用法相关的知识,希望对你有一定的参考价值。

 变量删除和替换

 

技术图片

 

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

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 变量的高级用法的主要内容,如果未能解决你的问题,请参考以下文章

${ }引用变量的高级用法

shell高级用法--函数

跟着360架构师 学习Shell脚本编程 完整版

Shell高级用法-----函数(function)

2.shell编程-函数的高级用法

fab高级用法