技术改变生活

博客园 首页 新随笔 联系 订阅 管理

url=www.computergame.com  #定义一个变量

echo ${#url}              #变量字符串数量统计

20

 

echo ${url:0:10}        #变量中字符串的截取,变量的切片操作

www.comput

 

echo ${url:5}          #变量切片操作,不指定切片数量,默认取所有

computergame.com

 

echo ${url#www.}           #变量内容的删除,#代表从前往后删

computergame.com

 

echo ${url#*.}         #删除到第一个匹配的.结束

computergame.com

 

echo ${url##*.}          #变量内容的删除,##代表贪婪匹配,删除到最后一个.结束

com

 

echo ${url%.com}        #变量内容的删除,%代表从后往前删除

www.computergame

 

echo ${url%.*}           #从后往前删,删除到匹配的第一个.结束

www.computergame

 

echo ${url%%.*}             #从后往前删,删除到匹配的最后一个.结束,%%代表贪婪匹配

www

 

echo ${url/game/GAME}     #变量内容的替换,将game替换成GAME

www.computerGAME.com

 

echo ${url/m/M}        #变量的替换,/代表替换,将m替换成M,默认只替换匹配到的第一个m

www.coMputergame.com

 

echo ${url//m/M}         #变量的替换,//代表贪婪匹配,替换所有的m为M

www.coMputergaMe.coM

 

unset var1

echo ${var1-aaa}        #变量的替代,-代表变量内容的替代;变量为空时替代为指定的变量内容

aaa

 

var2=bbbb

echo ${var2-xxxxxxxxxxx}   #变量内容的替代,变量已经被赋值,包括空值,变量内容都不会被替代。

bbbb

 

var3=ccccc

echo ${var3:-xxxxxxxxxx}  #变量内容的替代,变量已经被赋值,变量内容不会被i替代。

ccccc    

 

var4=

echo ${var4:-xxxxxxxxx}   #变量内容的替代,变量已被赋值,但是变量值为空,则会被替代。

xxxxxxxxx

 

-  :-作用:如何给变量设置默认值

小结:${变量名-新变量值}   变量没有被赋值,使用"新变量值"替代;变量有被赋值(包括空值),不会被替代。

   ${变量名:-新变量值}  变量没有被赋值,包括空值,使用"新变量值"替代;变量有被赋值,不会被i替代。

 

 

+  :+     =  :=       ?  :?可以继续尝试测试

posted on 2019-05-10 11:14  小阿峰  阅读(279)  评论(0编辑  收藏  举报