Warum wird die CD meines Bash-Skripts nicht richtig ausgeführt?

Warum wird die CD meines Bash-Skripts nicht richtig ausgeführt?

Ich verwende das Windows-Subsystem für Linux und lerne das Terminal. Ich möchte Anwendungen auf meinem Desktop mit dem Terminal öffnen, also habe ich beschlossen, ein Bash-Skript zu erstellen, um cddie .exeDatei zu öffnen und auszuführen.

Das ist, was ich habe:

cd "/mnt/Users/username/AppData/Local/Programs/'Opera GX'/"
./launcher.exe

Allerdings wird mir dieser Fehler angezeigt:

./operaLaunch.sh: line 1: cd: $'/mnt/Users/akaza/AppData/Local/Programs/Opera GX/\r': No such file or directory
./operaLaunch.sh: line 2: ./launcher.exe: No such file or directory

Ich weiß nicht, warum Zeile 1 in der Fehlermeldung anders ist.

Edit: Also, ich habe Notepad++ heruntergeladen und die Zeilenenden in die richtigen Unix-Enden geändert, aber das Skript funktioniert trotzdem nicht. Und ja, ich hatte einen Tippfehler in den Zitaten meines Skripts. So sieht mein Skript jetzt aus

cd "/mnt/c/Users/akaza/AppData/Local/Programs/'Opera GX'/"
./launcher.exe

Dies ist die Fehlermeldung, die ich jetzt bekomme:

./operaLaunch.sh: line 1: cd: /mnt/c/Users/akaza/AppData/Local/Programs/'Opera GX'/: No such file or directory
./operaLaunch.sh: line 2: ./launcher.exe: No such file or directory 

Vielleicht das Leerzeichen?

Antwort1

Vielen Dank an Kamil Maciorowski, der mir geholfen hat, das Problem zu verstehen. Das Problem lag darin, dass die einfachen Anführungszeichen in die doppelten Anführungszeichen eingefügt wurden. Nachdem ich die einfachen Anführungszeichen entfernt habe, funktioniert mein Skript wie vorgesehen. Danke für die Hilfe

verwandte Informationen