test 是 Shell 内置命令,用来检测某个条件是否成立。test 通常和 if 语句一起使用,并且大部分 if 语句都依赖 test。test 命令有很多选项,可以进行数值、字符串和文件三个方面的检测。
test expression
参数 | 描述 |
---|---|
expression | 判断 expression 是否成立。 |
当 test 判断 expression 成立时,退出状态为 0,否则为非 0 值。
[ expression ]
参数 | 描述 |
---|---|
expression | 判断 expression 是否成立。 |
test 命令也可以简写为 []
,注意 []
和 expression 之间的空格,这两个空格是必须的,否则会导致语法错误。[]
的写法更加简洁,比 test 使用频率高。
使用 test 命令,实现数值比较
#!/bin/bash
echo "pls input grade:"
read grade
if test $grade -le 60; then
echo "不及格"
elif test $grade -ge 60 && test $grade -le 70; then
echo "及格"
elif [ $grade -ge 70 ] && [ $grade -le 80 ]; then
echo "良好"
elif [ $grade -ge 80 ] && [ $grade -le 90 ]; then
echo "优秀"
elif test $grade -ge 90 && test $grade -le 100; then
echo "杰出"
fi
程序运行后,控制台输出如下:
我们使用了 test 命令与 if 语句,进行了数值的相等判断。
test 是 Shell 内置命令,用来检测某个条件是否成立。test 通常和 if 语句一起使用,并且大部分 if 语句都依赖 test。test 命令有很多选项,可以进行数值、字符串和文件三个方面的检测。