Day 3: Shell条件语句和循环
学习目标学习内容1. 条件语句if语句case语句2. 循环结构for循环while循环3. 练习任务大树哥个人信息
学习目标
- 学习Shell中的条件语句,如if语句和case语句。
- 理解循环结构,如for循环和while循环。
- 练习编写脚本,包括条件判断和循环执行。
学习内容
今天我们将学习Shell中的条件语句和循环结构,这些是编写脚本时非常有用的控制结构。
1. 条件语句
if语句
if语句用于根据条件判断执行不同的代码块。其基本语法如下:
1if [ condition ]; then
2 # 代码块1
3
4else
5 # 代码块2
6fi
在条件语句中,condition
是一个用于判断的条件表达式,如果条件成立,则执行代码块1;否则执行代码块2。
case语句
case语句用于根据不同的值执行不同的代码块。其基本语法如下:
1case variable in
2 pattern1)
3 # 代码块1
4 ;;
5
6 pattern2)
7 # 代码块2
8 ;;
9 *)
10 # 默认代码块
11 ;;
12esac
在case语句中,variable
是需要匹配的变量,根据匹配的模式执行相应的代码块。pattern1
、pattern2
等是匹配模式,;;
用于表示代码块的结束。
2. 循环结构
for循环
for循环用于遍历一系列值,并对每个值执行一组语句。其基本语法如下:
1for variable in values; do
2 # 代码块
3done
在for循环中,variable
是用于迭代的变量,values
是需要遍历的值列表,可以是固定的值或是通配符。
while循环
while循环用于根据条件重复执行一组语句。其基本语法如下:
1while condition; do
2 # 代码块
3done
在while循环中,condition
是一个用于判断的条件表达式,如果条件成立,则重复执行代码块,直到条件不再成立。
3. 练习任务
1# 使用if语句判断数字大小
2num1=10
3num2=20
4
5if [ $num1 -gt $num2 ]; then
6 echo "$num1 is greater than $num2"
7else
8 echo "$num1 is less than or equal to $num2"
9fi
10
11# 使用case语句判断星期几
12day=3
13
14case $day in
15 1)
16 echo "Monday"
17 ;;
18 2)
19 echo "Tuesday"
20 ;;
21 3)
22 echo "Wednesday"
23 ;;
24 4)
25 echo "Thursday"
26 ;;
27 5)
28 echo "Friday"
29 ;;
30 6)
31 echo "Saturday"
32 ;;
33 7)
34 echo "Sunday"
35 ;;
36 *)
37 echo "Invalid day"
38 ;;
39esac
40
41# 使用for循环遍历数组并打印
42fruits=("Apple" "Banana" "Orange" "Mango")
43
44for fruit in "${fruits[@]}"; do
45 echo "I like $fruit"
46done
47
48# 使用while循环计数并打印
49count=1
50
51while [ $count -le 5 ]; do
52 echo "Count: $count"
53 count=$((count+1))
54done
继续加油!明天我们将继续学习更多关于Shell编程的知识。
大树哥个人信息
- 网名:大树哥
- 8年以上数据库中间件经验,专注于数据库中间件运维,Oracle、MySQL、Weblogic、WebSphere、Tomcat、Nginx等;
- Oracle 19c OCP,软考数据系统工程师,系统规划与管理师高级等认证
- 微信公众号: AI智能提效开发运维