深入浅出Linux-Shell编程[三】

举报
Maynor学长 发表于 2022/09/20 19:42:35 2022/09/20
【摘要】 3、Shell 分支if语句1、单分支 IF 条件语句1、语法格式if [ 条件判断式  ];then条件成立时,  执行的程序fi# if语句使用fi结尾和一般语言使用大括号结尾不同# [条件判断式] 就是使用test命令判断 ,所以中括号和条件判断式之间必须有空格# then 后面跟符号条件之后执行的程序 ,可以放在[]之后 ,用";"分割。也可以换行写入 ,就不需要";"了2、实例2、...


3Shell 分支if语句

1、单分支 IF 条件语句

1、语法格式


if [ 条件判断式  ];then

件成立时,  执行的程序

fi

# if使用fi结尾和一般语言使用大括号结尾不同

# [条件判断式] 就是使用test命令判断 ,所以中括号和条件判断式之间必须有空

# then 后面跟符号条件之后执行的程序 ,可以放在[]之后 ,";"分割。也可以换行写入 ,就不需要";"



2、实例


2分支语句

1、语法格式


if [ 条件判断式  ];  then

条件成立时 ,执行的程序

else

条件不成立时,  执行的另一个程序

fi



2、实例



# 判断输入的是不是目

#!/bin/bash

read t 30 p "please input a dir :" dir

if[ d "$dir" ];then # 注意前后的空格

echo "输入的是目录"

else

echo "输入的不是目录"

fi

# 判断  apache 是否启

#!/bin/bash

test = $(ps aux | grep httpd | grep ‐v grep)

# 截取httpd进程,  并把结果赋予变量test

if [ n test ];then

# 如果test不为空

echo "the apache is on running!" >> /~/running.log

else

/etc/rc.d/init.d/httpd start &> dev/null

echo "the apache is restart!" >> /~/restart.log

fi



3分支语句

1、语法格式

if [ 条件判断式1 ]

then

当条件判断式1成立时,  执行程序1

elif [ 条件判断式2 ]

then

当条件判断式2成立时,  执行程序2

...省略更多条件 ....

else

当所有条件都不成立,  最后执行此程序

fi



2、实例

#!/bin/bash

# 从键盘输入获取数字赋值给变量age

read age

if (( $age <= 2 )); then

echo "婴儿"

elif (( $age >= 3 && $age <= 8 )); then

echo "幼儿"

elif (( $age >= 9 && $age <= 17 )); then

echo "少年"

elif (( $age >= 18 && $age <=25 )); then

echo "成年"

elif (( $age >= 26 && $age <= 40 )); then

echo "青年"

elif (( $age >= 41 && $age <= 60 )); then

echo "中年"

else

echo "老年"

fi



【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。