@@ -40,7 +40,7 @@ Shell Tutorial
40
40
- [ 文件测试操作符] ( #文件测试操作符 )
41
41
- [ 比较操作符] ( #比较操作符 )
42
42
- [ 操作字符串] ( #操作字符串 )
43
- - [ for/while] ( #forwhiles )
43
+ - [ for/while] ( #forwhile )
44
44
- [ for] ( #for )
45
45
- [ while] ( #while )
46
46
- [ until] ( #until )
@@ -973,14 +973,16 @@ exit 0
973
973
974
974
## for/while
975
975
976
+ 重复一些命令的代码块,如果条件不满足就退出循环。
977
+
976
978
### for
977
979
978
- 重复一些命令的代码块,如果条件不满足就退出循环 ,下面是一个基本的循环结构。[ demo27] ( ./example/demo27 )
980
+ 在循环的每次执行中,arg将顺序的存取list中列出的变量 ,下面是一个基本的循环结构。[ demo27] ( ./example/demo27 )
979
981
980
- > for arg in [ list]
981
- > do
982
- > command(s)...
983
- > done
982
+ > for arg in [ list]
983
+ > do
984
+ > command(s)...
985
+ > done
984
986
985
987
每个` [list] ` 中的元素都可能包含多个参数,在处理参数组时,这是非常有用的,使用set命令来强制解析每个` [list] ` 中的元素。并且分配每个解析出来的部分到一个位置参数中。
986
988
@@ -997,10 +999,10 @@ done
997
999
998
1000
一个while循环可以有多个判断条件,但是只有最后一个才能决定是否退出循环。然而这需要一种有点不同的循环语法。
999
1001
1000
- > while [ condition]
1001
- > do
1002
- > command...
1003
- > done
1002
+ > while [ condition]
1003
+ > do
1004
+ > command...
1005
+ > done
1004
1006
1005
1007
``` shell
1006
1008
# --------------------------
@@ -1041,10 +1043,10 @@ exit 0
1041
1043
1042
1044
这个结构在循环的顶部判断条件,并且如果条件一直为false那就一直循环下去。(与while相反)。
1043
1045
1044
- > until [ condition-is-true]
1045
- > do
1046
- > command...
1047
- > done
1046
+ > until [ condition-is-true]
1047
+ > do
1048
+ > command...
1049
+ > done
1048
1050
1049
1051
** 注意⚠️**
1050
1052
@@ -1127,14 +1129,14 @@ case/select依靠在代码块的顶部或底部的条件判断来决定程序的
1127
1129
1128
1130
case它允许通过判断来选择代码块中多条路径中的一条。它的作用和多个if/then/else语句相同,是它们的简化结构,特别适用于创建目录。[ demo30] ( ./example/demo30 )
1129
1131
1130
- > case "$variable" in
1131
- > ?"$condition1" )
1132
- > ?command...
1133
- > ?;;
1134
- > ?"$condition2" )
1135
- > ?command...
1136
- > ?;;
1137
- > esac
1132
+ > case "$variable" in
1133
+ > ?"$condition1" )
1134
+ > ?command...
1135
+ > ?;;
1136
+ > ?"$condition2" )
1137
+ > ?command...
1138
+ > ?;;
1139
+ > esac
1138
1140
1139
1141
- 对变量使用` "" ` 并不是强制的,因为不会发生单词分离。
1140
1142
- 每句测试行,都以右小括号` ) ` 结尾。
@@ -1189,11 +1191,11 @@ exit 0
1189
1191
1190
1192
select结构是建立菜单的另一种工具,这种结构是从ksh中引入的。
1191
1193
1192
- > select variable [ in list]
1193
- > do
1194
- > ?command...
1195
- > ?break
1196
- > done
1194
+ > select variable [ in list]
1195
+ > do
1196
+ > ?command...
1197
+ > ?break
1198
+ > done
1197
1199
1198
1200
用select来创建菜单
1199
1201
0 commit comments