美文网首页
shell 流程控制

shell 流程控制

作者: 碎玉长青 | 来源:发表于2018-01-03 13:14 被阅读0次

条件判断

if 单支流程控制

语法:

if   [ 条件 ]
then
      指令
fi      #结束语句

双分支 if 语句

语法

if  [ 条件 ]
      then
          指令二
      else
          指令二
       fi

实例

read -p "input name : "   username
if [ "${username}" == "luban"  ]
then
       echo "login  success"
 else 
        echo  "login  failed"
fi

多分支if

语法

if [ 条件1 ]
then 
    指令1
elif [ 条件2 ]
then
    指令2
else
    指令3
fi

实例

#!/bin/bash
# 多if语句的使用场景
if [ "$1" == "start" ]
then
   echo "服务启动中..."
elif [ "$1" == "stop" ]
then
   echo "服务关闭中..."
elif [ "$1" == "restart" ]
then
   echo "服务重启中..."
else
   echo "$0 脚本的使用方式: $0 [ start | stop | restart ]"
fi

case 语句

语法

case  变量名  in
        值1)
            指令1
             ;;
        值2)
             指令2
             ;;
        值3)   
             指令3
             ;;
        exac

实例

read -p "input name : " username
case "${username}"  in
        "luban")
              echo  "success"
               ;;
         "qihao")
               echo  "success"
               ;;
          *)   # 当前面条件都不符合,用* 匹配任意非分支的选择
                echo "failed"
                ;;
        exac

循环

for 循环

语法

for 值 in 列表
do
   执行语句
done

注意:

”for” 循环总是接收 “in” 语句之后的某种类型的字列表
执行次数和list列表中常数或字符串的个数相同,当循环的数量足够了,就自动退出
对于固定次数的循环,可以通过seq命令来实现,就不需要变量的自增了

实例(命令)

#!/bin/bash
#  遍历当前目录
for file in $(ls)
do
      echo "file name : ${file}"
done

实例(列表)

#!/bin/bash
num = $(seq 10)      # 生成一个数组从1~10
for i in "${num}"
do 
      echo  "${i}"
done 

while

语法

while 条件
do
   执行语句
done

实例

#!/bin/bash
cou = 0
while [ $cou  -le  5 ]
do 
    echo  "${cou}"
    coun = $((cou + 1))
done

相关文章

  • 10.Shell编程三:Shell中流程控制

    Shell中流程控制

  • lx4.shell2

    shell2 shell函数 字符隔断和迭代器 IFS 流程控制 循环

  • 2022-08-13 Linux基础知识(4)- Shell (

    Shell (二) | Shell 数组、流程控制 查看内容请点击下面的链接: https://www.cnblo...

  • shell(五)

    Shell 流程控制 和Java、PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): 在...

  • # shell流程控制语句

    shell流程控制语句 任何编程语言都离不开流程控制语句,其实编程基本上就是掌握了流程控制语句,然后加上函数(或者...

  • Shell流程控制

    Shell流程控制 简单流程控制语句 单分支if语句 语法格式 双分支if语句 语法格式 多分支if语句 语法格式...

  • linux shell编程学习--四函五流

    shell控制流程if else 语法,test、[] 、[[]]、(())、let 使用注意,如果没有else后...

  • Shell 流程控制

    和Java、PHP等语言不一样,sh的流程控制不可为空,如(以下为PHP流程控制写法): 在sh/bash里可不能...

  • shell 流程控制

    条件判断 if 单支流程控制 语法: 双分支 if 语句 语法 实例 多分支if 语法 实例 case 语句 语...

  • shell 流程控制

    菜鸟教程 单分支if条件语句 代码1 双分支if条件语句 多分支 case 语句 格式 for 循环 语法1 示例...

网友评论

      本文标题:shell 流程控制

      本文链接:https://www.haomeiwen.com/subject/znzcnxtx.html