请帮助看看这段SHELL程序有错误么?

来源:百度知道 编辑:UC知道 时间:2024/06/20 07:42:18
#!/bin/bash
echo "enter you ID:"
echo ""
read ID
if [$ID -eq 200]
then
echo "$ID nin shu ru de shu zi xiao yu deng yu 200"
fi
已经加了执行权限,在执行该脚本的时候
[root@localhost fugd]# ./c.sh
enter you ID:
2
./c.sh: line 5: [2: command not found
执行后,输入2后回车,为什么会提示 命令未找到呢?不是应该推出的么?

echo "enter you ID:"
echo ""
read ID
if [ $ID -eq 200 ]
then
echo "$ID nin shu ru de shu zi xiao yu deng yu 200"
fi
知道哪错了不,在shell中if用法格式严格,必须前后有空格,再试试吧

把 200 加引号试试看

if [$ID -eq 200] 应改为:if [ $ID -eq 200 ]

另外
echo "enter you ID:"
echo ""
这两句可改为:echo -n "enter you ID:"

if [$ID -eq 200] 这句话错了。
左方括号 [ 是个命令,相当于test,左右都要有空格。与test命令不同, [ 命令要有 ] 来标识该命令的解释。] 的左面也要有空格。
应该改为:
if [ $ID -eq 200 ]