【发布时间】:2013-10-21 21:36:49
【问题描述】:
我是 shell 脚本的新手,所以我有一个问题。我在这段代码中做错了什么?
#!/bin/bash
echo " Write in your age: "
read age
if [ "$age" -le "7"] -o [ "$age" -ge " 65" ]
then
echo " You can walk in for free "
elif [ "$age" -gt "7"] -a [ "$age" -lt "65"]
then
echo " You have to pay for ticket "
fi
当我尝试打开此脚本时,它会询问我的年龄,然后显示
./bilet.sh: line 6: [: 7]: integer expression expected
./bilet.sh: line 9: [: missing `]'
我不知道我做错了什么。如果有人能告诉我如何解决它,我将不胜感激,对不起我的英语不好,希望你们能理解我。
【问题讨论】:
-
你通常不应该在命令的参数之间有空格吗?为什么省略了?
-
this page 解释了很多关于各种 bash 比较语法的内容。
-
是整数还是空白?