11的ppt课堂练习
作业
笔记
1.if then 语句
bash shell的if语句会运行if后面的那个命令;如果该命令的退出状态码是0,说明该成功运行,位于then部分的命令就会被执行;如果该命令的退出状态码是其他值,then 部分的命令就不会被执行;bash shell 会继续执行脚本中的下一个命令
if command
then
commands
fi
或者if command ; then
commands
fi
2.嵌套的if then语句位于主 if - then - else语句的else代码中
if command
then
commands
else
commands
fi
3.镶嵌if
if command1
then
command set 1
elif command2
then
command set 2
elif command3
then
command set 3
elif command4
then
command set 4
4.test 语句
if test condition
then
commands fi
if [ condition ]
then
commands
fi
注意:也可以使用方括号定义测试条件,第一个方括号之后和第二个方括号之前,必须加上一个空格,否则就会报错
5.布尔逻辑是一种能够将可能的返回值简化为TRUE或FALSE的方法
if - then语句允许你使用布尔逻辑来组合测试,有两种布尔运算符可用:
[ condition 1 ] && [ condition 2 ] ( AND )
[ condition 1 ] || [ condition 2 ] ( OR )
6.双括号命令 (( expression )):允许你在比较过程中使用高级数学表达式,双括号命令提供了更多的数学符号,并且不需要将双括号中表达式里的大于号转义
双方括号命令 [[ expression ]]: 使用了test命令中采用的标准字符串比较,并且提供模式匹配
7.case命令采用列表格式来检查单个变量的多个值;不需要再写出所有的elif语句来不停地检查同一个变量的值了
case variable in pattern1 | pattern2 ) commands1 ;;
pattern3 ) commands2 ;;
*) default commands ;;
esac
12的ppt
作业
笔记
1.for循环
for var in list
do
commands
done
2.在list参数中,你需要提供迭代中要用到的一系列值;可以通过几种不同的方法指定列表中的值 (1)读取列表中的值
(2)读取列表中的复杂值
(3)从变量读取列表
(4)从命令读取值
(5)更改字段分隔符
(6)用通配符读取目录
3.while 命令某种意义上是 if-then 语句和 for 循环的混杂体
while test command
do
other commands
done
while命令中定义的 test command 和 if - then 语句中的格式一模一样;可以使用任何普通的 bash shell 命令,或者用 test 命令进行条件测试,比如测试变量值
4.在含有多个命令的while语句中,在每次迭代中所有的测试命令都会被执行,包括测试命令失败的最后一次迭代
5.until命令和while命令工作的方式完全相反
until命令要求你指定一个通常返回非零退出状态码的测试命令,只有测试命令的退出状态码不为0,bash shell才会执行循环中列出的命令;一旦测试命令返回了退出状态码0,循环就结束了 until test command
do
other commands
done
6.break命令:试跳出当前正在执行的循环
continue命令:提前中止某次循环中的命令,但并不会完全终止整个循环
break/ continue n :指出要跳出的循环层级
课堂训练