Könnte das Skript Dos Newlines verwenden?
Versuchen Sie, dos2unix darauf auszuführen.
Die erste Zeile, #!/bin/bash , teilt Linux mit, wo der Interpreter zu finden ist. Das Skript sollte auch mit chmod +x script.sh ausführbar sein , was Sie anscheinend getan haben.
Es ist sehr wahrscheinlich, dass Sie diese Datei mit einem Windows-Editor erstellt haben, der einen <cr><lf> platziert am Ende jeder Zeile. Dies ist der Standard unter dos / windows. OS X platziert einen <cr> am Ende jeder Zeile. Unter Unix / Linux ist es jedoch der Standard, einfach einen <lf> zu setzen am Ende der Zeile.
Linux sucht nun nach einer Datei namens /bin/bash<cr> um die Datei zu interpretieren, wobei <cr> ist ein Wagenrücklaufzeichen, das unter Linux ein gültiges Dateizeichen ist. Eine solche Datei existiert nicht. Daher der Fehler.
Lösung: Bearbeiten Sie die Datei mit einem Editor unter Linux und entfernen Sie den zusätzlichen <cr> . Ein Tool, das normalerweise funktioniert, wenn die Datei unter Windows bearbeitet wird, ist dos2unix .