如何在没有编码的情况下创建应用程序启动器?

如何在没有编码的情况下创建应用程序启动器?

我想为刚刚安装的应用程序创建一个启动器,但无论我搜索什么都是关于创建一个带.desktop扩展名的文件,但我需要另一种方法来完成此操作而无需任何编码或输入。

我找到了 Arronax,但它对我来说不起作用。它没有启动所需的应用程序。Arronax 可以.desktop通过选择所需的参数来直观地制作文件。有人能给我一些建议吗?

答案1

外部来源

您需要的是 gnome-desktop-item-edit程序。基本上它做同样的事情 - 它创建一个.desktop文件。为什么?因为启动器是.desktop文件,只是固定到启动器。仅此而已。顺便说一下,Windows 快捷.lnk方式也是文件,它们只是不显示为带.lnk扩展名的文件,但如果您曾经安装过 Windows 硬盘驱动器 - 您就会知道。

如果您安装或,该gnome-desktop-item-edit命令仍然可用。gnome-panelgnome-tweak-tool

一旦拥有它,您就可以在终端中使用此命令:

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

自制

我之前确实为此编写了一个小脚本(为什么不呢?)。您可以复制代码,保存到文件,然后随时运行。就这么简单!

#!/bin/bash

FORM=$(zenity --forms \ --title="Simple shortcut maker" --text="Create new .desktop file" \
        --add-entry="Program Name" \
        --add-entry="Command or path to file" \
        --add-entry="Terminal app(true/false)" \
        --add-entry="Icon (path)") 

[ $? == 0 ] || exit 1

awk -F'|' -v home="$HOME" '{ 
    FILE = home"/Desktop/"$1".desktop"
        print "[Desktop Entry]" >> FILE
        print "Type=Application" >> FILE
        print "Name="$1 >> FILE
        print "Exec="$2 >> FILE
        print "Terminal="$3 >> FILE
        if ($4 !~ /^[ ]*$/)
            print "Icon="$4 >> FILE ;
    system("chmod 755 " FILE);

}' <<< "$FORM"

它看起来是这样的:

在此处输入图片描述

您的桌面文件夹中将有.desktop一个文件,稍后您可以将其固定到启动器。

笔记:有关 gnome-desktop-item-edit 的内容由fossfreedom 的原始答案,请为他的优秀作品点赞!

答案2

假设你的应用程序是一个 GUI 应用程序,目前没有启动器,有一个简单的方法可以让Unity 创建启动器供您使用~/.local/share/applications,之后您可以将其移动到任何您喜欢的位置。

  1. 从命令行运行(GUI)应用程序一次。
  2. 在启动器中,右键单击出现的图标,运行应用程序,选择“锁定到启动器”

    在此处输入图片描述

  3. 导航到~/.local/share/applications,您将在那里找到由 Unity 创建的新启动器。甚至您运行它时使用的参数也包含在启动器中。由于它尚未可执行,因此它将没有图标。

  4. 使其可执行(在 nautilus > 权限(选项卡)中单击鼠标右键,现在您可以将其移动到您喜欢的任何位置,然后双击以启动该应用程序。

注意:尚未执行的启动器的名称可能与您在 Unity Launcher 中看到的名称不同。如果您有疑问,只需~/.local/share/applications按修改日期对文件进行排序,最新编辑的文件就是您新创建的启动器。

相关内容