if else
2024年06月27日
一、认识
二、条件
2.1 [ -w "文件路径" ]
[-w "文件路径"]
用于检查文件是否具有写权限。它返回 true
(即状态码为0),当指定的文件可以被写入时。在if
条件判断的方括号两边加上空格,这是必须的。
2.2 [ ${a} -eq ${b} ]
[ ${a} -eq ${b} ]
判断 a
与 b
是否相等。在if
条件判断的方括号两边加上空格,这是必须的。
2.3 [ ${a} -gt ${b} ]
[ ${a} -gt ${b} ]
判断 a
是否大于 b
。在if
条件判断的方括号两边加上空格,这是必须的。
2.4 [ ${a} -lt ${b} ]
[ ${a} -lt ${b} ]
判断 a
是否小于 b
。在if
条件判断的方括号两边加上空格,这是必须的。
2.5 [ ! -e "${targetFile}" ]
[! -e "${targetFile}"]
用于检查文件是否存在。它返回 true
(即状态码为0),当指定的文件存在时。在if
条件判断的方括号两边加上空格,这是必须的。
三、语法
3.1 if then fi
if condition
then
command1
command2
...
commandN
fi
3.2 if then else fi
if condition
then
command1
command2
...
commandN
else
command
fi
3.3 if then else-if then else fi
if condition1
then
command1
elif condition2
then
command2
else
commandN
fi
四、用法
4.1 两数比较
一、判断两数大小
#!/usr/bin/env bash
a=3
b=4
if [ ${a} -gt ${b} ]
then
echo "a > b"
else
echo "a <= b"
fi
二、判断两数大小,并有 !
运算
#!/usr/bin/env bash
a=3
b=4
if [ ! ${a} -eq ${b} ];
then
echo "a is not equal to b"
else
echo "a is equal to b"
fi
三、判断两数大小,并有 ||
运算
#!/usr/bin/env bash
a=3
b=4
if [ ${a} -gt ${b} ] || [ ${a} -eq 3 ];
then
echo "a > b and a = 3"
else
echo "a <= b or a != 3"
fi
四、判断两数大小,并有 &&
运算
#!/usr/bin/env bash
a=3
b=4
if [ ${a} -gt ${b} ] && [ ${a} -eq 3 ];
then
echo "a > b and a = 3"
else
echo "a <= b or a != 3"
fi