Ubuntu / Unity 将脚本附加到启动器

Ubuntu / Unity 将脚本附加到启动器

我最近下载了 IntelliJ IDEA 并通过运行启动该应用程序. idea.sh。该应用程序在我运行时出现在启动器中,但由于某种原因,当我右键单击它时,我没有像使用其他应用程序那样获得“锁定到启动器”选项。

如何将其连接到启动器?

是否因为我正在运行脚本而不是直接运行可执行文件而禁用了该选项?

答案1

看起来有两种方法可以做到这一点。

方法#1:手动创建 .desktop 文件

是的,您需要为其创建一个自定义 .desktop 启动器。以下是一般步骤:

  1. 创建 *.desktop 文件/usr/local/share/applications(或/usr/share/applications取决于您的系统)。

    $ gksudo gedit <insert-path-to-new-file.desktop>
    
  2. 粘贴到下面的文字

    [Desktop Entry]
    Type=Application
    Terminal=false
    Name=IntelliJ IDEA
    Icon=/path/to/icon/icon.svg
    Exec=/path/to/file/idea.sh
    

    编辑Icon=和。Exec=Name=Terminal=True/false确定终端打开窗口并显示输出或在后台运行的天气。

  3. 将 .desktop 文件放入 Unity Launcher 面板中。对于此步骤,您需要在文件浏览器中导航到您在前面的步骤中创建的 .desktop 文件所在的位置。找到文件后,将文件拖到侧面的Unity Launcher栏上。执行此操作后,您可能需要运行以下命令以使系统识别新添加的 .desktop 文件。

    $ sudo update-desktop-database
    

方法#2:GUI 方法

您可以调用 GUI 来帮助完成此操作,而不是手动创建 .desktop 文件。

  1. 安装 gnome 面板

    $ sudo apt-get install --no-install-recommends gnome-panel
    
  2. 启动 .desktop GUI 生成器

    $ gnome-desktop-item-edit ~/Desktop/ --create-new
    

                      编辑SS

参考

答案2

以下内容适用于我的情况,从启动器启动 shell 脚本,以及保持 shell 窗口打开

方法

  • 此示例带有mate-terminalgnome-terminal如果您的系统上有此示例,请使用它。
  • 这个例子是一个php cli shell 脚本,为了理解这个想法,任何命令都可以在这里传递。
  • -h在本例中,一个参数被传递给脚本。
  • 添加; bash使 shell 窗口在脚本结束后保持打开状态,例如:

    mate-terminal --execute bash -c "php /home/lilith/Desktop/moon/MOON/moon -h ; bash"
    

附加变化

要保持窗口打开,并在脚本目录上设置路径,请cd在命令前使用 a 。例如:

mate-terminal --execute bash -c "cd /home/lilith/Desktop/moon/MOON/ && php moon -h ; bash" 

这允许启动一些附加命令,而不必保留在当前工作目录中。

相关内容