Ich habe den Eindruck, wenn ich die Zeile einbeziehe
#!/bin/bash
Am Anfang meiner Datei wird sie als Bash-Skript erkannt, das ich nur ausführen kann
file.sh
anstatt
sh file.sh
Aber in meinem Fall file.sh
gibt so etwas wie test.sh
gibt test.sh: command not found
. Warum ist das so?
AKTUALISIEREN
Ich merke, dass ich verwenden muss ./
. Aber ich dachte es wird trotzdem im aktuellen Verzeichnis aussehen?
./test.sh
.
, dies wird jedoch nicht empfohlen.
sh file.sh
und ./file.sh
sind nicht gleich, wenn die erste Zeile ist #!/bin/bash
! Die richtige Methode zum Ausführen von Bash-Skripten ist die Verwendung von bash file.sh
. Außerdem wird von der Verwendung der .sh
Erweiterung aufgrund der Verwirrung abgeraten ("es heißt .sh, also muss ich sh file.sh
richtig verwenden?")
\#!/bin/bash
beim Schreiben in Ihre Datei aufgenommen? Am Anfang sollte es keinen Backslash geben.