Linux
終端不呼叫“then”,報告語法錯誤和找不到命令
我有 CentOS 7。我正在從 BASH 執行一個非常簡單的腳本。我執行了 chmod 命令,然後從終端執行腳本文件。我收到一條錯誤消息,提示“如果找不到命令”,這是一個語法錯誤。你能幫我解決這個問題嗎?
#!/bin/bash clear echo "Enter a number:" read number if["$num" -eq 10] then echo "the number is 10" elif["$num" -lt 10] then echo "that number is less then 10" elif["$num" -gt 10] then echo "this is greater than 10" else echo "the number is between 10 and 20" fi
輸出:
Enter a number: 100 ./arya.sh: line 6: if[ -eq 10]: command not found ./arya.sh: line 7: syntax error near unexpected token `then' ./arya.sh: line 7: `then'
您需要在
[
/]
和它們旁邊的任何內容之間放置至少一個空格:if [ "$num" -eq 10 ]
[
實際上是一個 bash 命令,是test
計算表達式的命令的別名,並且關閉]
必須獨立存在,因此它不會作為表達式的一部分進行計算。