服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Linux - Bash 基础知识系列 #7:If Else 语句

Bash 基础知识系列 #7:If Else 语句

2023-08-11 17:05未知服务器之家 Linux

Bash 支持 if-else 语句,以便你可以在 shell 脚本中使用逻辑推理。 通用的 if-else 语法如下: if [ expression ]; then ## 如果条件为真则执行此块,否则转到下一个elif [ expression ]; then ## 如果条件为真则执行此块,否则转到下一个else ## 如果

Bash 基础知识系列 #7:If Else 语句

Bash 支持 if-else 语句,以便你可以在 shell 脚本中使用逻辑推理。

通用的 if-else 语法如下:

if [ expression ]; then
  ## 如果条件为真则执行此块,否则转到下一个
elif [ expression ]; then
  ## 如果条件为真则执行此块,否则转到下一个
else 
  ## 如果以上条件都不成立,则执行此块
fi

正如你所注意到的:

  • elif用于 “否则如果” 类型的条件。
  • if-else 条件始终以fi结尾。
  • 使用分号;then关键字

在展示 if 和 else-if 的示例之前,我先分享一下常见的比较表达式(也称为测试条件)。

测试条件

以下是可用于数字比较的测试条件运算符:

条件

当满足以下条件时为真

$a -lt $b

$a < $b$a小于$b

$a -gt $b

$a > $b$a大于$b

$a -le $b

$a <= $b$a小于等于$b

$a -ge $b

$a >= $b$a大于等于$b

$a -eq $b

$a == $b

$a -ne $b

$a != $b

如果你要比较字符串,可以使用以下测试条件:

条件

当满足以下条件时为真

"$a" = "$b"

$a$b相同

"$a" == "$b"

$a$b相同

"$a" != "$b"

$a$b不同

-z "$a"

$a为空字符串

文件类型检查也有条件:

条件

当满足以下条件时为真

-f $a

$a是一个文件

-d $a

$a是一个目录

-L $a

$a是一个链接

现在你已经了解了各种比较表达式,让我们在各种示例中看看它们的实际应用。

在 Bash 中使用 if 语句

让我们创建一个脚本来告诉你给定的数字是否为偶数。

这是我的脚本,名为even.sh

#!/bin/bash
read -p "Enter the number: " num
mod=$(($num%2))
if [ $mod -eq 0 ]; then
	echo "Number $num is even"
fi

当模数运算(%)整除给定数字(本例中为 2)时,它返回零。

延伸 · 阅读

精彩推荐