【九月打卡】第9天 一课玩转自动化运维全流程,轻松应对自动化运维岗

2022/9/14 3:16:14

本文主要是介绍【九月打卡】第9天 一课玩转自动化运维全流程,轻松应对自动化运维岗,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

课程章节: 2章 shell编程基础:2-9 Shell中的字符串处理(课程链接:https://coding.imooc.com/lesson/549.html#mid=50185

主讲老师: 沈奇才

课程内容:shell编程实战与Linux运维基础--初始shell编程

课程收获:

1、获取字符串长度:用法:${#变量},shell里面取字符串长度意思是字符数没有字节的区别,1个汉字长度就是1):

var=xxxxxyyyyssss

echo "${#var}" ####长度是13

var2="中文长度"

echo "${#var2}" ####长度是4

2、字符串的截取(类似于sql里面的substr()函数或者python里面的切片s[2:10])

用法:${变量:起始位置:长度},起始位置从0开始数,如果不指定长度则默认一直取到最后,例如${var:2:3} 代表从第3个位置连续取3个字符

[zhang@localhost shell_with]$ var=abcdefgh      

[zhang@localhost shell_with]$ echo "${var:2:3}"

cde ###结果

[zhang@localhost shell_with]$ echo "${var:2}"  ###从第三个位置一直往后取字符串直到结束

cdefgh ###结果

3、删除某个子串,有多种写法:#、##、%、%%(均只能从头开始匹配)

#和##是从左开始删除匹配:${变量#匹配的字符串}

%和%%是从右开始删除匹配:${变量%匹配的字符串}

#和##的区别:#是最小匹配,##是最大匹配,如

[zhang@localhost shell_with]$  var=abcdefghasfasidgajslfjas

[zhang@localhost shell_with]$ echo "${var#a*j}"

slfjas

[zhang@localhost shell_with]$ echo "${var##a*j}"

as

4、替换:${变量/替换前的字符串/替换后的字符串} 或者${变量//替换前的字符串/替换后的字符串}

区别:/局部替换,之替换第一个匹配上的;//全局替换

将如果替换后的字符串置空,则就是删除的意思

https://img1.sycdn.imooc.com/631fd2290001be5919000911.jpghttps://img1.sycdn.imooc.com/631fd2530001a38b17050899.jpghttps://img4.sycdn.imooc.com/631fd26c0001d23c17590895.jpg



这篇关于【九月打卡】第9天 一课玩转自动化运维全流程,轻松应对自动化运维岗的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程