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
.