Shell编程 流程控制——流程控制语句

if

if<判别命令>;

then {命令清单1}

else {命令清单2} //可省略

fi

注意,<判别命令>通常是上述的 “test<表达式>”。如果只写<表达式> 需要用中括号括起来。(中括号两边要有空格)

如果判别命令返回0(表达式成立)反之则执行else{}

分号是多个语句之间的分割符,当只有一个语句的时候,末尾无需分号,最后一个语句后面与无需分号。

例如:

if []; then 完全等效于 if [] then

1    #!/bin/bach
     2    echo -n "Do you want to do?(Y/N)"
     3    read ANSWER
     4    if [ $ANSWER = Y -o $ANSWER = y ]; then
     5        echo I know you want to do
     6    else
     7        echo You don\'t want to do
     8    fi
     9    

 

case条件语句

case $变量名 in
"值 1")
;;
如果变量的值等于值1,则执行程序1,值
2")
如果变量的值等于值2,则执行程序2
…省略其他分支…
*)
如果变量的值都不是以上的值,则执行此程序
;;
esac

posted @ 2019-03-26 11:48  晓风微微  阅读(295)  评论(0编辑  收藏  举报