我一直在 Codecademy 上學習命令列課程,但收到一個錯誤,我不明白為什麼它在那裡。
我在 script.sh 檔案中輸入以下程式碼:
01 #!/bin/bash
02 first_greeting="Nice to meet you!"
03 later_greeting="How are you?"
04 greeting_occasion=0
05
06
07 if [$greeting_occasion -lt 1]
08 then
09 echo $first_greeting
10 else
11 echo $later_greeting
12 fi
當我在 bash 上運行時,我得到這個:
$./script.sh
./script/sh: line 6: [1: command not found
How are you?
我嘗試過更改greeting_occasion
值,但結果總是How are you?
在第 6 行出現錯誤How are you?
。
對這件事有什麼想法嗎?感謝您的時間!
答案1
你需要一個空間[ $greeting_occasion -lt 1 ]
。
已$greeting_occasion
轉換為1
.這給了
if [1 -lt 1]
因此 bash 嘗試使用[1
參數運行-lt
,1]
並將其退出程式碼傳遞給if