在 ubuntu 啟動器上的相對路徑上執行 shell

在 ubuntu 啟動器上的相對路徑上執行 shell

我建立了這個執行 shell 的啟動器:

[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

郵政@FedonKadifeli 建議幫助我。

可能的解決方案可以是:

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

解釋一下命令:

下面的程式碼片段將取得執行者的目錄名稱,因此啟動器目錄名稱

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

因此附加所需的路徑,將使其執行相對路徑。

相關內容