<!-- gte="" mso="" 9=""><![endif]--><!-- gte="" mso="" 9=""><![endif]--><!-- gte="" mso="" 10=""><style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman";
mso-ansi-language:#0400;
mso-fareast-language:#0400;
mso-bidi-language:#0400;}
table.MsoTableGrid
{mso-style-name:网格型;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
border:solid windowtext 1.0pt;
mso-border-alt:solid windowtext .5pt;
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-border-insideh:.5pt solid windowtext;
mso-border-insidev:.5pt solid windowtext;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
text-align:justify;
text-justify:inter-ideograph;
mso-pagination:none;
font-size:10.0pt;
font-family:"Times New Roman";
mso-ansi-language:#0400;
mso-fareast-language:#0400;
mso-bidi-language:#0400;}
</style><![endif]--><!--![endif]----><!--!----><!--![endif]----><!--!----><!--![endif]----><!--!---->![endif]-->!-->![endif]-->!-->![endif]-->!-->
Bash循环结构
一、for结构
For arg in list
Do
…
done
|
有限循环,次数取决于list元素的个数,内容取决于list元素的值
二、while结构
条件循环,当条件为真时,执行一次循环
三、until结构
条件循环,当条件为假时,才执行一次循环
四、case结构
Case arg in
… ) … ;;
… ) … ;;
Esac
|
条件分支,注意每个分支中,条件和结果用”)”分开,结束用两个封号”;;”
五、select结构
六、代码
#! /bin/bash
for item in "a" "b" "c" "d" "e" "f"
do
echo "$item"
done
#######for result
#a
#b
#c
#d
#e
#f
a="abc def ghi jkl mno pqr"
for argu in `echo $a`
do
echo "$argu"
done
######for result
#abc
#def
#ghi
#jkl
#mno
#pqr
b=10
c=20
while [ "$b" -lt "$c" ]
do
echo "b=$b"
let "b=$b+1"
done
#######while result
#b=10
#b=11
#b=12
#b=13
#b=14
#b=15
#b=16
#b=17
#b=18
#b=19
b=10
c=20
while [ "$b" -lt "$c" ]
do
let "b=$b+1"
if [ "$b" -eq "13" ]
then
continue
fi
echo "b=$b"
done
#######while result
#b=11
#b=12
#b=14
#b=15
#b=16
#b=17
#b=18
#b=19
#b=20
while [ "$var" != "end" ]
do
echo "While input variable"
read var
done
until [ "$var" != "end" ]
do
echo "Until input variable"
read var
done
echo "Hit a key, then hit return"
read var
case "$var" in
"1" ) echo "var is 1" ;;
"2" ) echo "var is 2" ;;
* ) echo "var is other" ;;
esac
select var in "123" "456" "789"
do
echo "ok is $var"
break
done
|
七、关键点
1、for中的list可以用命令替换
2、read输入是var,而不是$var
3、select很直观,直接将list中的所有输出菜单样,但有待进一步。
分享到:
相关推荐
在Bash脚本编程中,循环结构是必不可少的一部分,它帮助我们处理一系列相似的任务。然而,对于新手来说,理解变量的作用域以及它们如何在循环中工作可能会有些困惑。本文将详细探讨Bash循环中变量作用范围的问题,...
它支持命令行交互、脚本编写,以及许多内置的控制结构,如循环、条件判断等。理解Bash语法对于任何想要在终端环境中进行有效工作的用户来说都是至关重要的。使用像EditPlus这样的编辑器,结合定制的Bash语法高亮和...
循环结构是Shell脚本编程中的核心概念,它们使得重复任务自动化和批量处理成为可能。通过掌握for、while和until循环的使用,以及循环控制语句和嵌套循环,我们可以编写出更加强大和灵活的Shell脚本。本文详细介绍了...
### 实例四:循环结构 Bash中的`for`循环可以遍历一系列值。下面的脚本将打印1到10的数字: ```bash #!/bin/bash for i in {1..10} do echo "$i" done ``` `{1..10}`是Bash的扩展语法,表示一个范围。 ### 实例...
1. **Bash基础知识**:理解Bash环境,包括Shell变量、命令替换、流程控制结构(如if语句、for循环、while循环)以及函数的创建和使用。 2. **输入/输出重定向**:学习如何改变程序的默认输入和输出,包括重定向到...
本书会详细讲解Bash的语法,包括变量、条件表达式、循环结构、函数定义等。变量在Bash中用于存储数据,例如路径、用户输入等。条件表达式用于判断,如文件是否存在或数值比较,这在编写条件语句时至关重要。循环结构...
- 条件语句和循环结构 - 函数的创建与调用 - 输入/输出重定向和管道 - 错误处理和调试技巧 - 脚本的权限和执行权限 - 高级特性,如数组、命令替换、过程子shell等 **总结** 学习Bash Shell编程不仅可以提升你在...
Bash支持if条件语句、for循环、while循环和case语句,用于编写条件判断和迭代逻辑。学习如何正确使用这些结构可以提高脚本的灵活性和效率。 **5. 函数** 在Bash中,函数是一种可重复使用的代码块,可以接受参数并...
此外,Bash还支持管道、重定向、变量、函数、条件语句和循环结构,为开发者提供了丰富的工具来提高工作效率。 关于“mingw.zip”这个压缩文件,它可能包含了MingW的安装程序或者预配置的Bash环境。解压后,用户通常...
Bash支持`for`、`while`循环以及`case`、`if`、`else`等控制结构。 8. **函数** Bash允许定义函数,通过`function`关键字或直接在函数名后跟一对花括号定义。 9. **数组** 虽然Bash的数组功能相对较弱,但仍...
- **流程控制**:学习条件语句(if-else)、循环结构(while、for)等。 - **函数与脚本**:编写可重用的脚本和函数,提高效率。 - **文件处理**:掌握文本文件的读写操作,以及如何处理复杂的文件格式。 - **...
《Bash Cookbook》一书由Carl ...《Bash Cookbook》不仅涵盖了以上知识点,还深入讨论了Bash脚本的高级主题,如函数编写、条件表达式、循环结构和错误处理等,是一本全面而实用的指南,适合初学者和有经验的用户参考。
- **循环结构**:支持 `for`、`while` 等循环结构。 - **函数**:通过 `function` 或 `()` 来定义函数。 通过以上介绍,我们可以看到 Bash 作为一种强大的脚本语言,在 Linux 和 UNIX 系统管理中扮演着极其重要的...
5. **壳程序编程**:增加了对shell脚本编写的支持,包括条件测试、循环结构和函数等。 通过这个源代码,开发者或系统管理员可以对Bash进行深度定制,以适应特定的需求或环境,同时也可以查看和学习其内部工作原理。...
条件语句(if-then-else)和循环结构(for、while、until)是控制脚本流程的重要组成部分。例如,`if [ $VAR -eq 5 ]`可以检查变量是否等于5,而`for i in {1..10}`则能进行从1到10的循环。 函数是Bash脚本中的可...
- **在两个值之间转换**,**生成范围内的数字**,**循环遍历可变数字范围**:通过`for`循环和算术运算可以实现这些循环结构。 - **循环遍历文件内容**,**文件和目录**:使用`while read`和`find`命令可以方便地...
1. **基本语法**:了解变量声明、赋值、条件语句(if...else)、循环结构(for, while)、函数定义等基本语法。 2. **命令行参数**:学习如何处理命令行输入的参数,例如 `$#` 表示参数总数,`$1`, `$2` 等表示单个...
Bash提供了丰富的条件测试结构,如`[ expression ]`或`[[ expression ]]`。可以测试文件属性、数值比较、字符串操作等。 ### 6. 文件名扩展和通配符 - `*`: 匹配任意字符序列(不包括路径分隔符)。 - `?`: 匹配...