shell 基本语法(条件测试, 引号, 逻辑与或非)
条件测试
常见的测试命令 test
[
, 通过检测退出码, 来决定条件测试是否成立.
例如:
read myint
test $myint -eq 100 # 判断从标准输入读到的值是否等于 100
echo $? # 等于返回 0, 不等于返回 1
常见的测试选项有:
整数测试:
-eq(等于)
-ne(不等于)
-lt(小于)
-gt(大于)
-le(小于等于)
-ge(大于等于)
字符串测试:
== (字符串相等)
!= 字符串不相等
-z 判断字符串是否为空
-n 判断字符串是否非空
文件类型测试:
-d 判定是否为目录文件
-b 判定是否为块设备
-c 判定是否为字符设备
-f 判定是否为普通文件
示例代码:
# 条件测试
# read myint
# test $myint -eq 100 # 判断从标准输入读到的值是否等于 100
# echo $? # 等于返回 0, 不等于返回 1
# 使用 [ 命令测试
# read myint
# [ $myint -ne 100 ]
# echo $?
# 字符串测试
# read mystring
# [ $mystring == "