为了账号安全,请及时绑定邮箱和手机立即绑定

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

课程章节: 2章 shell编程基础:2-11 Shell中的判断语句、2-12 Shell中的循环语句(一)(课程链接:https://coding.imooc.com/lesson/549.html#mid=50187

https://coding.imooc.com/lesson/549.html#mid=50188

主讲老师: 沈奇才

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

课程收获:

一、判断语句(继续上次课程笔记):

if ls; then  ##if 后面还可以直接跟linux命令

echo "执行成功"

fi

if ls /not exist file; then  ###ls一个不存在的目录打印"执行失败",即$?=0

echo "执行成功"

else "执行失败"

fi

延伸,通过函数返回情况打印执行成功或直白:

xyz(){

echo "执行xyz函数"

return 1 ## 返回非0的值代表失败,结果会传给 $?

}

if xyz; then

echo "函数执行成功"

else "函数执行失败"

fi

还有种条件判断:双中括号:[[]],linux命令里面可以直接用不需要写if

[[ -e "/root" ]]

echo $?

如果存在/root目录则echo $?结果是0,反之返回1

if里面的条件:与(&&)、或(||)

if [ 条件1 ]&&[ 条件2 ]  等价 if [ 条件2 -a 条件2 ]

二、循环语句(新课程笔记:):

1、for循环

for 条件

do

循环体

done

例1

for a in aaa bbb ccc

do

echo "循环变量:$a"

done

例2

arr1=(aaa bbb  ccc "hello, world!")

for a in ${arr1[@]} ### 如果${arr1[@]} 不用双引号括起来则 "hello, world!"这个元素会被拆分成两个

do

echo "遍历数组元素:$a"

done

例3

for i in `seq 1 10` ###for后面接Linux命令

shell里面空格、换行、制表符都可以拆分元素

改变内置分隔符:IFS

IFS=$'\n' ###按照换行符分隔

declare |grep IFS

IFS=$' \t\n'

https://img1.sycdn.imooc.com//6323ddb500011a5c19200913.jpg

https://img1.sycdn.imooc.com//6323dd73000176a219200913.jpghttps://img1.sycdn.imooc.com//6323dd8f0001d69219200913.jpg

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消