记录一些与或非相关的逻辑运算
数字比较
- -eq 等于,如: if [ "$a" -eq "$b" ]
- -ne 不等于,如: if [ "$a" -ne "$b" ]
- -gt 大于,如: if [ "$a" -gt "$b" ]
- -ge 大于等于,如: if [ "$a" -ge "$b" ]
- -lt 小于,如: if [ "$a" -lt "$b" ]
- -le 小于等于,如: if [ "$a" -le "$b" ]
- 大于(需要双括号),如: if (( "$a" > "$b" ))
- 大于等于(需要双括号),如: if (( "$a" >= "$b" ))
- 大于(使用 test 命令),如:if test $a -gt $b
字符串比较
- 相等,if [ "$a" = "$b" ]
- 不相等,if [ "$a" != "$b" ]
- 相等(使用 test),if test $a = $b
- 长度为0,if [ -z "$a" ]
逻辑与
使用方法一
if [ $a == 1 -a $a == 2 ]; then
echo "hello world"
fi
使用方法二
if [ $a == 1 ] && [ $a == 2 ]; then
echo "hello world"
fi
逻辑或
使用方法一
if [ $a == 1 -o $a == 2 ]; then
echo "hello world"
fi
使用方法二
if [ $a == 1 ] || [ $a == 2 ]; then
echo "hello world"
fi
非运算
if !(( $a == 1 ))
then
echo "hello world"
fi
判断文件是否存在
#!/bin/bash
file="path/to/your/file"
if [ -e "$file" ]; then
echo "$file exist."
else
echo "$file not exist."
fi
判断是不是文件
#!/bin/bash
path=$1
if [ -f "$path" ]; then
echo "$path is a file."
elif [ -d "$path" ]; then
echo "$path is a directory."
else
echo "$path is neither a file nor a directory."
fi
标签:shell,world,echo,逻辑运算,file,path,fi,hello
From: https://www.cnblogs.com/chenss15060100790/p/18258141