我是一个真正的菜鸟,抱歉,如果这是一个愚蠢的问题
是一段代码片段
(第一行是#259行,最后一行是#263)
if [ $col -le 6 ]
then
echo -e "\t\t\033[91;4m
$paragraph\033[0m"
elif ! [ $col -le 12 ]
当我运行它时,这是我运行时得到的
./checker.sh: line 259: [: .",: integer expression expected
./checker.sh: line 263: [: .",: integer expression expected
当我抬起这个错误时,它说要确保支架之间有一个空间,我有一个支架。我不知道还能做什么。
答案 0 :(得分:1)
如果你研究如何阅读它们,错误信息就会提供信息。
让我们举三个例子:
$ col="1"; [ $col -le 6 ]
$ col=""; [ $col -le 6 ]
bash: [: -le: unary operator expected
$ col="a"; [ $col -le 6 ]
bash: [: a: integer expression expected
在这三个中,您获得了以下消息:"预期的整数表达式"。这意味着您的col
不是整数。
要重现您看到的消息,我们设置col=' .",'
:
$ col=' .",'; [ $col -le 6 ]
bash: [: .",: integer expression expected