【发布时间】:2010-12-17 08:35:15
【问题描述】:
好的,这对于在 bash 上花费的时间比我多的人来说可能是非常明显的。
我正在尝试运行此代码:
#!/bin/bash
if ["1" -eq "2"]
then
echo "True"
else
echo "False"
fi
但是当我执行文件时,它会发回
./test.sh: line 3: 1: command not found
False
一定有什么重要的东西我错过了。我见过人们在括号后使用分号,这似乎没有任何区别......:S
【问题讨论】:
-
[ 是一个程序,试试
which [你会看到。而且您不能执行带有不带空格的参数编写的程序...(正如其他人所回答的那样,-eq 仅适用于整数。使用 [ 正确时它会告诉您) -
大家都说过
[后面需要一个空格。 原因 是[是一个命令——它是test的别名。现在它是一个内置的 shell,但你可以在大多数系统上找到/bin/[。 -
@plundra:那些是整数。请参阅我对 RageZ 答案的评论。
-
bash, command not found 的可能重复项
标签: bash