如何在 KDE 中设置桌面快捷方式来运行终端命令?

Ale*_*hok 14 kde command-line bash scripts .desktop

我正在尝试创建一个桌面快捷方式来启动Spyder,可以通过spyder在终端中输入来启动。

我在里面做了一个spy.sh脚本spyder。它适用于bash spy.sh./spy.sh。但是当我制作这样的桌面快捷方式时:

[Desktop Entry]
Name=spyd
Exec=/Desktop/spy.sh
Comment=
Icon=
Type=Application
Terminal=true
Run Code Online (Sandbox Code Playgroud)

它给出了一个错误:

“为终端创建子进程时出错。无法执行子进程“/Desktop/spy.sh”(没有这样的文件或目录)”

当我改成同样的错误 Exec=spyder

我该怎么办?

Cyn*_*azy 6

要配置 KDE 桌面快捷方式以运行特定命令,您必须链接应用程序的完整路径。

即使用Exec=/home/(user)/Desktop/spy.sh而不是Exec=/Desktop/spy.sh(因为如果您键入/Desktop/spy.sh系统实际上会从/--> 中找到文件/Desktop,该文件夹可能永远不会存在。)

对于跑步Spyder,请遵循甜点的答案。

另外,确保spy.sh是可执行的,否则Permission denied会出现。

  • 您可能有一个损坏的 `spy.sh` 脚本。此外,如果您发现答案有效,请通过单击复选标记图标来标记已接受的答案。 (3认同)
  • 因为桌面环境不会自动为你搜索`spyder`。如果你输入 `export` 你会看到类似 `PATH=/usr/bin...` 的东西,但是 KDE 桌面不会检查这个参数。 (3认同)
  • @AlekhKarkadaAshok 我认为自动路径完成是一个终端功能,最好在其他地方提供完整路径,尤其是在配置文件中。 (2认同)

des*_*ert 6

您不需要脚本来执行此操作,只需在终端中执行

$ which spyder
Run Code Online (Sandbox Code Playgroud)

这为您提供了执行文件的完整路径,我想/usr/bin/spyder. 然后只需将该路径用于您的Exec=线路。

Exec=/usr/bin/spyder
Run Code Online (Sandbox Code Playgroud)