北京网站建设公司排名,免费微网站系统源码,效益成本原则网站建设,小程序赚钱的方式文章目录 前言#xff08;if语句的三种基本类型#xff09;一、单分支的if语句1.1、语法格式1.2、单分支的应用举例 二、双分支的if语句2.1、 语法格式2.2、 双分支的应用举例 三、多分支的if语句3.1、语法格式3.2 、 多分支的应用举例 注意事项 前言#xff08;if语句的三种… 文章目录 前言if语句的三种基本类型一、单分支的if语句1.1、语法格式1.2、单分支的应用举例 二、双分支的if语句2.1、 语法格式2.2、 双分支的应用举例 三、多分支的if语句3.1、语法格式3.2 、 多分支的应用举例 注意事项 前言if语句的三种基本类型
在简单的Shell脚本程序中通过正确使用if语句如果……那么……)能使Shell脚本具有一定的“判断力”以根据不同的条件来完成不同的管理任务if语句基本结构分三种类型。
一、单分支的if语句
对于单分支结构只有在“条件成立”时会执行相应的代码否则不执行任何操作。
1.1、语法格式
if 条件测试操作
then命令序列
fi1.2、单分支的应用举例
例如
1创建一个shell脚本jiaoben.sh。
[rootlocalhost opt]# touch jiaoben.sh2用ls查看opt目录发现没有任何文件夹。
[rootlocalhost opt]# ls
jiaoben.sh rh
[rootlocalhost opt]# vi jiaoben.sh
3在jiaoben.sh中写入if语句如果opt目录下没有aaa文件夹那么就创建aaa文件夹。
#!/bin/bash
if [ ! -e /opt/aaa/ ]thenmkdir /opt/aaa
fi4执行脚本查看opt目录发现aaa文件夹已经创建。
[rootlocalhost opt]# source jiaoben.sh
[rootlocalhost opt]# ls
aaa jiaoben.sh rh
[rootlocalhost opt]# 二、双分支的if语句
对于双分支结构当“条件不成立时”会进行else另一种操作。
2.1、 语法格式
if 条件测试操作
then 命令序列1
else 命令序列2
fi2.2、 双分支的应用举例
例如
1我们在上面的jiaoben.sh脚本中写入if语句如果opt目录下没有aaa文件夹那么就创建aaa文件夹如果opt目录下已经有aaa文件那么就创建aaabbb文件夹。
#!/bin/bash
if [ ! -e /opt/aaa/ ]thenmkdir /opt/bbbelsemkdir /opt/aaabbb
fi2先用ls查看opt目录发现没有任何文件夹执行jiaoben.sh 脚本发现会创建aaa文件夹当aaa文件夹已经存在时再执行脚本发现会创建aaabbb文件夹。
[rootlocalhost opt]# ls
jiaoben.sh rh
[rootlocalhost opt]# source jiaoben.sh
[rootlocalhost opt]# ls
aaa jiaoben.sh rh
[rootlocalhost opt]# source jiaoben.sh
[rootlocalhost opt]# ls
aaa aaabbb jiaoben.sh rh
[rootlocalhost opt]# 三、多分支的if语句
对于多分支结构即在if条件中用elif嵌套多个条件。能够根据多个互斥的条件分别执行不同的操作。
3.1、语法格式
if 条件测试操作1
then 命令序列1
elif 条件测试操作2
then 命令序列2
else
命令序列3
fi3.2 、 多分支的应用举例
例如
1一个简单的计算器编写
#/bin/bash
echo ----------------------------------
aaa欢迎使用XX的计算器
echo $aaa
echo ----------------------------------read -p 请输入第一个整数 bbbread -p 请输入你需要进行的运算加法减法-乘发x除法/取余% cccread -p 请输入第二个整数 ddd
if [ $ccc ]thennumexpr $bbb $dddecho $bbb$ddd结果为$numelif [ $ccc - ]thennumexpr $bbb - $dddecho $bbb-$ddd结果为$numelif [ $ccc x ]thennumexpr $bbb \* $dddecho $bbb x $ddd 结果为$numelif [ $ccc / ]thennumexpr $bbb / $dddecho $bbb / ddd结果为$numelif [ $ccc % ]thennumexpr $bbb % $dddecho $bbb % $ddd结果为$num
else echo 请输入正确的运算
fi
2执行脚本
注意事项
1在shell中then和if是分开的语句如果要在同一行里面输入则需要用分号将它们隔开。
2[ ]表示条件测试注意在“[”的前面和“]”的后面都必须要有空格。
3如果单纯的使用或者号系统会认为是输出或者输入重定向虽然有可能结果显示正确但是其实是错误的需要在前面加上转意符号“ \ ”进行转意。