摘要:Linux Shell 其实就是个命令行解释器,主要用来解释并执行用户下达的命令。用户每输入一条命令,Shell 就会去解释执行一条。在编写 Shell 的结构化程序时,循环得依靠 for、while、until 这些命令来达成,而控制循环的语句则是通过 break 和 continue 命令来实现的。
这篇文章重点给大家讲讲 Linux Shell 编程里循环控制语句的使用窍门,详细的情况请看下文。
一、登录Linux
1.登录Linux系统
2.查看Shell版本和帮助信息
二、Shell循环语句
说明:在编写Shell脚本程序的时候,循环是一种常用的控制结构,多用于重复执行一系列shell命令。
1.For循环语句
说明:在Shell编程中,for循环是最常见的循环控制语句。For循环可以遍历一个列表中的每个元素,并对每个元素执行一系列命令。
(1)for语法格式
(2)for使用实例
实例一
执行指令# vim for1.sh 编写脚本遍历数字列表
执行指令# sh for1.sh
实例二
执行指令# vim for2.sh 编写脚本遍历字符串列表
执行指令# sh for2.sh
备注:上述两个例子,默认以空格分隔元素。
实例三
执行指令# vim for3.sh 编写遍历数组脚本程序
备注:${array[@]}和 ${array[*]}两者都可以表示打印数组中的所有元素。
执行指令# sh for3.sh
实例四
执行指令# vim for4.sh 编写遍历输出1到18脚本程序
执行指令# sh for4.sh
2.While循环语句
说明:While循环语句常用于重复执行一条指令或一组指令,直到条件不满足时停止。
(1)while语法格式
(2)while使用实例
实例一
执行指令# vim totalsum.sh 计算1到100之和
执行指令# sh totalsum.sh
实例二
执行指令# vim RT.sh 用*号打印直角三角形
备注:上述脚本中的let命令主要用于计算,用于执行一个或多个表达式,其中的变量计算中不需要加上$符号。如果表达式中包含了空格或其他特殊字符,则必须使用双引号。
3.Until循环语句
说明:until循环语句与while循环语句正好相反,until循环将反复执行直到条件为真就结束,而while循环条件为假就结束循环。
(1)until语法格式
(2)until使用实例
实例一
执行指令# vim guessnumber.sh 编写猜数字的脚本程序
执行指令# sh guessnumber.sh
三、Shell循环控制语句
说明:shell脚本程序是通过break和continue命令来控制循环的。
1.break命令
(1)执行break命令跳出当前循环
执行指令# vim break1.sh编写跳出当前循环的语句
执行指令# sh break1.sh
备注:以上当i的值为6的时候,退出循环。输出结果为0-5的值。
(2)执行break命令跳出内层循环
执行指令# vim break2.sh编写跳出内层循环的语句
执行指令# sh break2.sh
备注:上述脚本程序在执行内部循环for的时候,当innerFlag值为2的时候就会跳出到外层的while循环, 由于外层循环一直flag都为0, 所以while会成为一个死循环。
(3)执行break命令跳出外层循环
执行指令# vim break3.sh编写跳出外层循环的语句
执行指令# sh break3.sh
备注:上述实例在break后面跟了个数字2,表示退出外面的第一层循环。
2.continue命令
说明:continue命令表示终止当前的一次循环,进入下一次循环,值得注意的是continue后面的语句不会执行。
执行指令# vim continue.sh 编写终止当前的一次循环,进入下一次循环的语句。
执行指令# sh continue.sh
备注:上述continue命令并不会直接终止整个循环,而是只终止当前的一次循环,进入下一次循环。