- 嵌套循环
1.1 题目要求
1.嵌套循环实现9*9乘法表(for和while都可以)
选做:格式对齐,以及使用单层循环完成9*9乘法表
1.2 练习代码
for i in {1..9}
do
for j in {1..9}
do
[ $j -le $i ] && echo -n "$i*$j= `echo $(($i*$j))` "
done
echo " "
done
1.3 测试结果
[root@hezhihao test]# bash mul_table.sh

1.4 总结
[<测试表达式>]的边界和内容之间至少一个空格
echo -n 意思是输出来不会默认添加换行符
echo " " 使每行之间有空行
格式对齐,单层循环
2.多分支结构
2. 1题目要求
判定一个成绩:
85-100 -》 A
70-84 -> B
60-69 -> C
0-59 ->D
程序的边界问题:>100, <0
必须输入的是数字:0-100
2.2练习代码
grade=$1
if echo "$grade" |grep "[a-zA-Z]"> /dev/null
then
echo "input is letter"
elif [ $grade -le 100 -a $grade -ge 85 ]
then
echo "Grade is A"
elif [ $grade -le 84 -a $grade -ge 70 ]
then
echo "Grade is B"
elif [ $grade -le 69 -a $grade -ge 60 ]
then
echo "Grade is C"
elif [ $grade -le 59 -a $grade -ge 0 ]
then
echo "Grade is D"
else
echo "input is wrong"
fi
2.3 测试结果

2.4 总结
直接回车或者输入其他特殊符号
3.循环
3.1 题目要求
循环创建用户:用户名为user01-user20
3.2练习代码
#! /bin/bash
for i in `seq 20`
do
echo "user$i"
done
3.3测试结果

3.4总结
seq用于产生从某个数到另一个数之间的所有整数 seq 首数 尾数
user01的表示