shell基础学习——条件判断和控制流程

目录

if-else语句

case语句

select选择结构

循环结构

for循环用法:用于遍历列表或者范围内的值。

while循环用法:在条件成立时重复执行命令。 

 until循环用法:在条件为假时执行循环体。

跳出循环:break 和 continue

if-else语句

if-else语句用于根据条件判断执行不同的命令块。 

if [ condition ]; then
    # 条件成立时执行的命令
else
    # 条件不成立时执行的命令
fi

# 示例
# 判断变量是否为空
if [ -z "$variable" ]; then
    echo "Variable is empty"
else
    echo "Variable is not empty"
fi

case语句

case语句根据变量的值进行匹配,并执行符合条件的命令块。

case "$variable" in
    pattern1)
        # 模式1匹配时执行的命令
        ;;
    pattern2)
        # 模式2匹配时执行的命令
        ;;
    *)
        # 默认情况下执行的命令(可选)
        ;;
esac

# 示例
# 根据用户输入的选择执行不同的操作
echo "Enter your choice: "
read choice
case "$choice" in
    1)
        echo "You chose option 1"
        ;;
    2)
        echo "You chose option 2"
        ;;
    *)
        echo "Invalid choice"
        ;;
esac

select选择结构

select 结构用于创建一个菜单式的选择器,让用户从一系列选项中选择。

select variable in option1 option2 ... optionN
do
    # 根据用户选择执行命令
    case $variable in
        option1)
            # 执行命令1
            ;;
        option2)
            # 执行命令2
            ;;
        ...
        optionN)
            # 执行命令N
            ;;
        *)
            echo "Invalid option"
            ;;
    esac
done

#!/bin/bash

# 定义菜单选项
options=("Option 1" "Option 2" "Option 3" "Quit")

# 显示菜单
PS3="Enter your choice: "
select choice in "${options[@]}"
do
    case $choice in
        "Option 1")
            echo "You chose Option 1"
            # 在这里添加执行 Option 1 的命令
            ;;
        "Option 2")
            echo "You chose Option 2"
            # 在这里添加执行 Option 2 的命令
            ;;
        "Option 3")
            echo "You chose Option 3"
            # 在这里添加执行 Option 3 的命令
            ;;
        "Quit")
            echo "Exiting..."
            break  # 选择 Quit 时退出循环
            ;;
        *)
            echo "Invalid option"
            ;;
    esac
done

循环结构

for循环用法:用于遍历列表或者范围内的值。

for item in list; do
    # 对每个项执行的命令
done

# 示例
# 遍历数组并输出每个元素
fruits=("apple" "banana" "cherry")
for fruit in "${fruits[@]}"; do
    echo "Fruit: $fruit"
done
while循环用法:在条件成立时重复执行命令。 

while [ condition ]; do
    # 循环体中的命令
done

# 示例
# 循环直到变量达到特定值
count=1
while [ $count -le 5 ]; do
    echo "Count: $count"
    ((count++))
done
 until循环用法:在条件为假时执行循环体。

until [ condition ]; do
    # 循环体中的命令
done

# 示例
#!/bin/bash

answer=""
until [ "$answer" = "y" ]; do
    echo "Do you want to quit? (y/n)"
    read answer
done

echo "Exiting the script"
跳出循环:break 和 continue
  • break:跳出当前循环。
  • continue:跳过当前循环中的剩余命令,继续下一次循环。
for i in {1..5}
do
    if [ $i -eq 3 ]; then
        break  # 当 i 等于 3 时跳出循环
    fi
    echo "Iteration: $i"
done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值