Shell 脚本学习笔记(三)——Shell 流程控制

你我皆是凡人,都在柴米油盐的琐碎中度日,也都在未知彷徨中向前。前路漫漫,起伏难料,我们要做的,就是时刻让心里充满阳光,认真生活。

本篇文章主要整理了Shell中常用的流程控制。

1. if else

记住记住,如果else分支没有语句执行,就不要写这个else了
注意注意格式

第一种格式
if condition
then
	command1
	...
fi
第二种格式
if condition
then
	command1
	...
else
	command2
	...
fi
第三种格式
if condition1
then
	command1
	...
elif condition2
then
	command2
	...
fi

案例

#!/bin/bash
val1="hello"
val2=6
val3=8
if [ $val1 = "hello" ]
then
	echo "相等"
fi
## 结果:相等


if [ $val2 == "2" ]
then 
	echo "相等"
else
 	echo "不等"
fi
## 结果:不等

if [ $val2 == "2" ]
then
	echo "等于"
elif [ $val2 == "6" ]
then
	echo "val3的值为8"
fi
## 结果 : val3的值为8

补充:
单等号和双等号的区别
单等号和双等号都可以比较字符串和数值类型

2. case … esac

case … esac 多分支选择结构。
语法:

casein
模式1)command1
	...
	;;
模式3)command2
	...
	;;
*)command3
	...
	;;
esac
分析:
1. 值 后面必须为 in 
2. case分支用右圆括号开始,两个分号表示break,即执行结束,跳出整个 case ... esac 语句。
3. 如果没有匹配的,则使用 ✳️ 号来捕获。
#!/bin/bash
val="2"
case $val in
1)
    echo "hello1"
	;;
2)
    echo "hello2"
	;;
*)
    echo "other hello"
	;;
esac
## 结果:hello2

3. for 循环

案例一:
#!/bin/bash
for var in 1 2 3 4
do
	echo "hello"
done 

案例二:
sum=0
for ((i=1;i<=100;i++))
do 
    sum=$[$sum+$i]    
done
echo $sum

案例三:
无限循环
for (( ; ; ))

4. while

while 循环用于不断执行一系列命令,

格式:
while condition
do
	command1
done

案例展示

案例一:
#!/bin/bash
int=1
while(( $int<=3 ))
do
    echo $int
    let "int++"
done

案例二:
s=0
i=1
while [ $i -le 100 ]
do
    s=$[$s + $i]
    i=$[$i +1]   
done
echo $s

案例三:
无限循环
while true
do
	command1
done
或者
while:
do
	command1
done
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小曾同学.com

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值