Выполнить оболочку по относительному пути в лаунчере Ubuntu

Выполнить оболочку по относительному пути в лаунчере Ubuntu

Я создал этот лаунчер, который запускает оболочку:

[Desktop Entry]
Version=1.0
Type=Application
Terminal=true
Exec=/full/path/server.sh
Name=MServer
Comment=foo
Icon=gnome-sudoku

Мне нужно выполнить относительный путь, так как я не знаю полный путь:

Exec=server.sh

Но код выше с относительным путем не работает. Как мне выполнить из относительного пути?

решение1

Theпочта@FedonKadifeli предположил, что мне это помогло.

Возможным решением может быть:

Exec=sh -e -c "exec \\"\\$(dirname \\"\\$0\\")/.sh/server.sh\\";$SHELL" %k

Объясняем команду:

Фрагмент ниже получит имя каталога того, кто это выполняет, следовательно, имя каталога запуска

$(dirname \\"\\$0\\")

Таким образом, добавление желаемого пути сделает этот путь выполнения относительным.

Связанный контент