ich habe einen Befehlszeilenkurs bei Codecademy gemacht und bekomme eine Fehlermeldung, bei der ich nicht herausfinden kann, warum sie da ist.
ich gebe diesen Code in meine script.sh-Datei ein:
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
Und wenn ich Bash ausführe, erhalte ich Folgendes:
$./script.sh
./script/sh: line 6: [1: command not found
How are you?
Ich habe versucht, den Wert zu ändern greeting_occasion
, aber das Ergebnis ist immer How are you?
ein Fehler in Zeile 6. Außerdem habe ich versucht, die Bedingung so zu ändern, dass sie in Zeile 5 beginnt, und ich erhalte in derselben Zeile, Zeile 6, denselben Fehler und dasselbe Ergebnis How are you?
.
Irgendwelche Ideen, was hier los ist? Vielen Dank für Ihre Zeit!
Antwort1
Du brauchst einen Platz [ $greeting_occasion -lt 1 ]
.
Das $greeting_occasion
wurde in ein umgewandelt 1
. Dies ergab
if [1 -lt 1]
Also versuchte Bash zu laufen [1
, mit Argumenten -lt
und 1]
übergab seinen Exit-Code anif