我有这个脚本
#!/bin/sh
if [ $# -ne 3 ] ; then
echo "param 1, param2, and A or B "
exit 1;
elif [ $# -eq 3 ]; then
if [$3 = "A"] ; then
echo "A"
elif [$3 = "B"]; then
echo "B"
fi
fi
基本上检查参数3是A还是B,然后做回声。但它返回:
./test.sh: line 6: [A: command not found
./test.sh: line 8: [A: command not found
我尝试使用-eq
进行比较,但它仍无效。我该如何解决这个问题?
答案 0 :(得分:29)
我确信之前已经出现过,但是 - [
实际上是一个命令。在[
之后需要一个空格才能让shell找到它。