Ich habe auf meinem PC (Manjaro mit xfce Desktop) in meinem $HOME/bin ein bash Skript “Datsich-AD.sh”. In der 1. Zeile steht der Shebang #!/bin/bash. Im xfce4-Terminal kann ich das Skript z.B. aufrufen mit
cd ~/bin
./Datsich-AD.sh
Das Skript habe ich auf einen anderen PC übertragen, dort läuft auch Manjaro mit xfce als Desktop. Ich habe das Skript dort auch in mein $HOME/bin getan. Wenn ich es auf die gleiche Weise dort starte, dann erscheint die Meldung:
Zeile 1: /bin/bash nicht gefunden
Das Skript läuft dennoch durch!
Wenn ich allerdings den Aufruf in die login-Startprogramme eintrage:
Im embedded Bereich gibt es noch sehr oft Systeme ohne Bash.
Wenn ein System Systemd verwendet, gibt es die Bash. Wenn es kein Systemd gibt, gibt es manchmal auch keine Bash. Das ist bestimmt nicht allgemeingültig, aber im embedded Bereich passt es oft.
Gilt natürlich nicht für so Hobby System wie Manjaro ARM.
Na gut, natürlich gibt’s Ausnahmen. Hier geht es aber nicht um embedded, ARM oder alpine, sondern um ein Desktop-System, noch dazu Manjaro und Xfce, dessen Standardshell Bash ist.
Ich gehe auch davon aus, dass das (die? der?) Shebang nicht auf die korrekte Datei zeigt. Gibt es denn die Datei?
Anstatt ./datei.sh kannst du auch bash datei.sh eingeben.
Schau dir mal die Datei in einem Hex Editor an oder verwende deinen Lieblings-Editor und lass dir alle Zeichen anzeigen, falls der das kann.
Ich würde sagen in der ersten Zeile gibt es nicht sichtbare Zeichen vor dem # . Im Hex Editor sollte es mit 23 21 losgehen. Falls es nicht am Anfang ist kann es auch noch irgendwo mittig in der Zeile sein.
Alternativ mal mit einer neuen Datei versuchen und erst ab Zeile 3 alles kopieren und die erste Zeile von Hand schreiben.
btw., war das extra oder ein versehen das du genau diese Formatierung verwendet hast. (Die ersten 2 Zeilen nicht im Codeblock.)