流程控制

返回主页

一、条件判断语法结构

1、if 判断

# 语法
if [ condition ];then
        command
        command
elif [ condition2 ];then
        command
        command
else 
        command
        command
fi

# 举例:
[root@TR shells]# if [ '胖太乙' ==  '太乙假人' ];then echo '胖太乙不是太乙假人' ; elif [ '胖太乙' == '玉皇大帝' ] ; then echo '胖太乙不是玉皇大帝'; else echo  '胖太乙是太乙真人' ; fi; 
胖太乙是太乙真人
[root@TR shells]#

2、case 判断

# 语法格式
说明:pattern表示需要匹配的模式
case var in             定义变量;var代表是变量名
pattern 1)              模式1;用 | 分割多个模式,相当于or
    command1            需要执行的语句
    ;;                  两个分号代表命令结束
pattern 2)
    command2
    ;;
pattern 3)
    command3
    ;;
          *)              default,不满足以上模式,默认执行*)下面的语句
    command4
    ;;
esac                            esac表示case语句结束


# 举例说明

#!/bin/bash
read -p '请输入姓名:' text
case $text  in
        '张三')
        echo '张三是个狂徒,离她远一些'
        ;;
        '马云')
        echo '这是中国首富,可以跟他混'
        ;;
        '胖太乙')
        echo '这是一个菜鸡,不要看他的文章~~~~~~'
        ;;
        *)
        echo '查无此人'
        ;;
esac

二、循环语法结构

1、for 循环

# 语法1
for variable in {list}
     do
          command 
          command
          …
     done

# 语法2
for variable in a b c
     do
         command
         command
     done

# 举例说明
[root@TR shells]# for item in 1 2 3 4;do echo $item ;done
1
2
3
4
[root@TR shells]#

2、for 循环不带循环列表

# 语法格式
for variable
    do
        command 
        command
        …
   done

# 举例说明
# 脚本内容如下
[root@TR shells]# cat Demo.sh 
#!/bin/bash
for var
do
  echo $var
done

# 执行脚本
[root@TR shells]# ./Demo.sh 1 3 5 7 9
1
3
5
7
9
[root@TR shells]#

可以看到, 虽然for 循环没有循环体, 但是确将我们执行执行脚本的参数作为循环体去遍历,如果不传递参数, 默认什么都不输出。

3、类C 风格的循环(本人更喜欢这种风格,和C#很像)

# 举例说明
for (( i=1;i<=5;i++))
    do
        echo $i
    done

# 输出结果
[root@TR shells]# cat Demo.sh 
#!/bin/bash
for (( i=1;i<=5;i++))
    do
        echo $i
    done
[root@TR shells]# ./Demo.sh
1
2
3
4
5
[root@TR shells]#

4、while 循环

while循环的条件是“条件为真”

# 语法
while 条件为真
  do
    执行命令
  done

5、until 循环

until循环的条件是“条件为假”

# 语法
until 条件为真
  do
    执行命令
  done
展开/折叠菜单
93 预览数量 2024-03-26 09:49:12 发布 时间
目录
赞数量
评论数量
返回顶部
暂无评论

暂无评论