优秀的编程知识分享平台

网站首页 > 技术文章 正文

《shell》case-for-while-continue-break

nanyue 2024-07-20 23:46:45 技术文章 14 ℃

今天我们继续介绍一下shell中其他的流程控制语句是如何使用的。主要是以下的四种语句,我们这里将以语法示例的形式进行说明。这一部分的内容相对来说语法是比较简单的,想要掌握语法结构,最直接有效的方法就是动手,多写一些小程序,这样,就能够很快的掌握语法结构,同时能够在程序中加深理解,彻底掌握它。

case

for

while

continue/break

case的语法说明和演示

1、case

case是多分支流程控制语句

2、语法格式

case 变量 in
字符串1)命令1
;;
字符串2)命令2
;;
字符串3)命令2
;;
...
字符串n)命令n
;;
esac

3、样例和实现结果

这里我们是简单的写了一个菜单选择,以case的形式展现,如下。

运行结果当我们在交互界面输入对应的选择项,就会展示不同的结果。

for语法说明和演示

1、语法

循环语句

for 变量 in 名字表
do
命令语句
done

2、样例和演示

这里我们简单的做一个扩展:

①、数字循环

for((i=1;i<=10;i++))

for i in $(seq 1 10)

for i in {1..10}

②、字符循环

for i in `ls`

for i in a1 b1 c1

######

list="a c b f" for i in $list

③、路径查找

for file in /root/*

for file in $(ll *.sh)

以上三种for的用法,我只是简要地记录了for主体语句,方法体均一样。

while语法和示例

1、语法

while 条件
do
命令
done

2、示例演示

求任意数字以内的平方


以下演示的是(())的形式


continue/break

continue:跳出本次循环,进行下一次循环,continue之后的语句不执行

break:跳出整个循环

示例演示:

选择1之后,echo语句没有执行,就是因为这里有continue语句。

选择q之后,跳出整个循环,原因就是这里使用了break。

这里我们还需要说明的一点是,由于linux编辑模式下体现不出来程序的层次结构,所以如果我们想要有类似python在pycharm中那样的缩进美感,我们需要在编程shell脚本的时候,人为的加一下tab缩进,使程序看起来优雅。当然了,以下所有介绍的程序的运行语句,都可以缩进一个tab,例如:

for 变量 in 名字表
        do
        命令语句
        done


今天主要介绍的就是语法方面的东西,希望能够帮助到初学者了解shell的各种控制语句的语法结构和简单的使用。欢迎大家评论和转发交流。

最近发表
标签列表