📅  最后修改于: 2023-12-03 14:59:28.198000             🧑  作者: Mango
在编写 Bash 脚本时,if 语句是必备之一,它允许您根据条件执行代码块。
if condition
then
command
fi
condition 是要测试的条件,如果条件为 true,则执行 command。"then" 语句块必须以 fi 结尾。如果条件为 false,则 command 不会被执行。
在 Bash 中,条件可以是一个比较、一个文件测试、一个逻辑测试等。下面是一些常用的条件类型:
比较运算符用于比较两个值,例如 -eq、-lt、-gt、-ne 等。
if [ $a -eq $b ]
then
echo "a is equal to b"
fi
可以使用条件测试运算符测试文件的状态,例如 -d、-f 和 -s。
if [ -d /path/to/dir ]
then
echo "directory exists"
fi
可以使用逻辑运算符组合两个表达式,例如 &&、|| 和 !。
if [ $a -eq 1 ] && [ $b -eq 2 ]
then
echo "a is 1 and b is 2"
fi
字符串测试用于测试字符串是否为 null 或非 null。
if [ -z $var ]
then
echo "var is null"
fi
以下是一个 Bash 脚本示例,该脚本使用 if 语句来检查用户是否为管理员。如果 user 变量包含字符串 "admin",则脚本将输出 "Welcome Admin"。否则,脚本将输出 "Access Denied"。
#!/bin/bash
user="admin"
if [ $user == "admin" ]
then
echo "Welcome Admin"
else
echo "Access Denied"
fi
在终端中执行脚本:
$ ./script.sh
Welcome Admin
if 语句是 Bash 程序中一个强大的工具,它允许您根据条件执行代码块。要使 if 语句起作用,请记住在 then 后面放一个空格,fi 语句必须是 if 语句块结束的最后一条语句,条件必须用方括号括起来,每个组件必须用空格分隔。