Fehler 1: Befehl bei einfacher bedingter Bash-Skriptübung nicht gefunden

Fehler 1: Befehl bei einfacher bedingter Bash-Skriptübung nicht gefunden

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_occasionwurde in ein umgewandelt 1. Dies ergab

if [1 -lt 1]

Also versuchte Bash zu laufen [1, mit Argumenten -ltund 1]übergab seinen Exit-Code anif

verwandte Informationen