Hallo,
ich möchte ein Bash-Script als 'Desktop'-Programm in einem Directory starten. Soll heißen: Ich will in einem Directory ein z.B. MyScript.desktop file ablegen, das mir mein Script starten soll. Das Script selbst liegt in //usr/local/bin/MyScript.sh und in dem MyScript.desktop file steht irgendwo Exec=//usr/local/bin/MyScript.sh Grundsätzlich funktioniert das auch. Jedoch möchte ich nun, dass das Script irgendwie erkennen kann aus welchem Directory es aufgerufen wurde. Das Script fragt mit $(pwd) den aktuellen Verzeichnispfad ab. Wenn ich es aus der Shell aufrufe, funktioniert das auch ganz prima. Wenn ich es aber nun aus meinem Desktop-Icon heraus aufrufe (im Dateibrowser), liefert es mir immer mein Homeverzeichnis zurück. Ganz egal, in welchem Directory mein MyScript.desktop-file liegt. Ich würde aber gerne genau dieses Directory bekommen, in welchem das MyScript.desktop liegt. Gibt's da irgend einen Weg? Vielleicht ein anderes Script-Kommando oder ein PATH-Argument im MyScript.desktop?
Einfaches Beispiel: Ich möchte also z.B. mein MyScript.desktop file in /home/FolderA/FolderB/MyScript.desktop ablegen. Jetzt macht mein Script vielleicht nur: echo $(pwd). Dann würde ich gerne den Pfad zu MyScript bekommen also /home/FolderA/FolderB/ und nicht /home/ Wenn ich in der Shell an die Stelle /home/FolderA/FolderB/ navigiere und mein Script aufrufe, funktioniert's. Aus dem Dateibrowser funktioniert's leider nicht.