目录
if语句
格式
# if语句
if condition
then
command1
command2
...
commandN
fi
# if else
if condition
then
command1
command2
...
commandN
else
command
fi
# if else-if else
if condition1
then
command1
elif condition2
then
command2
else
commandN
fi
示例
#!/bin/bash
a=1
if [ $a == 1 ]
then
echo $a等于1
fi
# then可以不换行,前面要要加分号(;)
if [ $a == 1 ];then
echo $a等于1
fi
# if else
if [ $a == 2 ]
then
echo $a等于2
else
echo $a不等于2
fi
# if elif else
if [ $a == 2 ];then
echo $a等于2
elif [ $a -eq 1 ];then
echo $a等于1
else
echo $a不等于1也不等于2
fi
for循环
格式
for var in item1 item2 ... itemN
do
command1
command2
...
commandN
done
示例
#!/bin/bash
# 定义一个数组
num_list=(1 3 5 7 9)
# ${num_list[@]} 获取数组中所有值
for num in ${num_list[@]}
do
echo $num
done
# do可以不换行,前面分号(;)隔开
for num in ${num_list[*]};do
echo $num
done
while语句
格式
while condition
do
command
done
示例
#!/bin/bash
int=1
while(( $int<=5 ))
do
echo $int
let "int++"
done
until循环
格式
until condition
do
command
done
示例
#!/bin/bash
n=1
# 打印1-4
until [ $n -ge 5 ]; do
echo $n
let "n++"
done
case语句
格式
case 值 in
模式1)
command1
command2
...
commandN
;;
模式2)
command1
command2
...
commandN
;;
esac
示例
#!/bin/bash
num=6
case $num in
1) echo '你选择了 1'
;;
2) echo '你选择了 2'
;;
3) echo '你选择了 3'
;;
4) echo '你选择了 4'
;;
*) echo '你没有输入 1 到 4 之间的数字'
;;
esac
# 多个条件可以写一起
num=6
case $num in
1|2|3|4) echo '你选择了 1-4任意的数字'
;;
*) echo '你没有输入 1 到 4 之间的数字'
;;
esac
跳出循环
#!/bin/bash
# break 退出所有循环
num_list=(1 3 5 7 9 11)
for num in ${num_list[@]};do
if [ $num -gt 8 ];then
echo $num大于8,退出循环
break
else
echo $num小于8
fi
done
# continue 退出当前循环,开始下次循环
for num in ${num_list[@]};do
if [ $num -gt 8 ];then
echo $num大于8,退出循环
continue
else
echo $num小于8
fi
done
本文详细介绍了Shell脚本中的基本控制结构,包括if条件语句、for循环、while循环、until循环和case语句的使用方法,并通过示例代码展示了如何在脚本中实现各种条件判断和循环控制。同时,还讲解了如何使用break和continue来跳出循环。这些基础知识对于编写高效且灵活的Shell脚本至关重要。
3511

被折叠的 条评论
为什么被折叠?



