Kali应用程序快捷方式分析

kali默认使用Gnome桌面环境,所以给kali添加应用程序快捷方式就是给Gnome添加应用快捷方式。

在/usr/share/applications目录下有很多的.desktop文件,每个文件就代表了一个应用的快捷方式。下面就是一个模拟的例子。

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=Sample Application Name
Comment=A sample application
Exec=application
Icon=application.png
Terminal=false

需要说明的是以上的Key和Value都是区分大小写的。

接下来我们看看都有哪些可以进行设置的项,并且这些项都是什么作用。

  • [Desktop Entry] 每个桌面项文件的第一行和每节的开头,标识与桌面集成的键值对块,是桌面正确识别文件所必须的。
  • Type 快捷方式的类型。
  • Encoding 描述此桌面文件中的编码
  • Name 主菜单和任何启动器中您的应用程序的名称。
  • Comment 描述这个应用程序。使用的是工具提示。
  • Exec 从 shell 中启动此应用程序的命令,可以有参数。
  • Icon 与此应用程序关联的图标名。
  • Terminal 说明程序是否在终端中运行。
  • Categories 在菜单中显示的应用类型。

我们来看一个实际的例子(这个例子也就是为什么我需要了解本文的内容的原因,安装网易云后点击图标不能打开程序!):

[Desktop Entry]
Version=1.0
Type=Application
Name=NetEase Cloud Music
Name[zh_CN]=网易云音乐
Name[zh_TW]=網易雲音樂
Comment=NetEase Cloud Music
Comment[zh_CN]=网易云音乐
Comment[zh_TW]=網易雲音樂
Icon=netease-cloud-music
Exec=sudo netease-cloud-music %U --no-sandbox
Categories=AudioVideo;Player;
Terminal=false
StartupNotify=true
StartupWMClass=netease-cloud-music
MimeType=audio/aac;audio/flac;audio/mp3;audio/mp4;audio/mpeg;audio/ogg;audio/x-ape;audio/x-flac;audio/x-mp3;audio/x-mpeg;audio/x-ms-wma;audio/x-vorbis;audio/x-vorbis+ogg;audio/x-wav;

如果应用程序可以接受命令行参数,那么Exec可以接受以下代码参数。

代码 描述
%f 单个文件名
%F 多个文件名。每个文件被解析为执行程序所附带的参数。可以在统一时刻打开多个文件。
%u 单个 URL。
%U 多个 URL。每个URL被解析为执行程序所附带的参数。
%c 翻译名称。
%k 用来表示桌面项文件位置的 URI 或本地文件名。
%i 将Icon这个Key扩展为两个参数,即--icon和Icon的值。(如果没有Icon的Key,则不可扩展)

如果你觉得以上内容不够全面,或者解释的不够清楚,那么可以来官网查看:

https://developer.gnome.org/desktop-entry-spec/
例如我们下载了一个WebStorm的免安装的包,解压后如下:

一般情况我们都需要来执行里面的webstorm.sh来启动这个程序,如果我们想要添加桌面快捷方式,那么就可以这样写:

[Desktop Entry]
Type=Application
Encoding=UTF-8
Name=WebStorm
Comment=WebStorm
Exec=/root/chong/software/WebStorm/bin/webstorm.sh
Icon=/root/chong/software/WebStorm/bin/webstorm.svg
Terminal=false

文件可以命名为WebStorm.desktop,放在/usr/share/applications下,这样系统就会添加对应的桌面快捷方式了:

kali 创建快捷方式的方法的更多相关文章

  1. C#两种创建快捷方式的方法

    C#两种创建快捷方式的方法http://www.cnblogs.com/linmilove/archive/2009/06/10/1500989.html

  2. Ubuntu系统应用程序创建快捷方式的方法

    大家安装了最新版的Ubuntu 14.0系统之后可能觉得很不习惯,因为Ubuntu的桌面干干净净没有任何快捷方式,任务栏的图标拖不下来,右键点击程序图标也没有创建快捷方式的菜单选项: 那如何把自己经常 ...

  3. Ubuntu 创建快捷方式的方法

    ln -s  /要创建快捷方式的地方/ /创建在哪里/

  4. 使用C#创建快捷方式

    在Windows中创建快捷方式很简单,直接用右键点击文件或文件夹,选择创建快捷方式即可.如果想用C#代码的方式创建,就没有那么方便了,因为.NET框架没有提供直接创建快捷方式的方法. 首先我们看一下快 ...

  5. matlab2013a for linux/Ubuntu 安装步骤及创建快捷方式(ubuntu14.04下安装)

    1.挂载安装镜像:sudo mount -o loop myfile.iso /media/mnt   #挂载ISO文件,使用參数 -o loop      mnt为已经建立好的文件夹. 2.运行安装 ...

  6. Ubuntu18.04下给PyCharm创建快捷方式

    Ubuntu18.04下给PyCharm创建快捷方式 该方法 WebStorm.PyCharm.Clion 等都适用. 步骤 终端输入: sudo gedit /usr/share/applicati ...

  7. winform创建快捷方式

    /// <summary> /// 创建快捷方式 /// </summary> public class Lnk { /// <summary> /// 创建快捷方 ...

  8. vc++ windows 快速启动栏创建快捷方式

    创建快速启动栏 在windows软件开发中,软件安装过程中总是需要在快速启动栏创建快捷方式,下面介绍一种快速启动栏创建快捷方式的方法,具体代码如下:(该方法不支持win10,目前还没有找到win10的 ...

  9. 警告1909。无法创建快捷方式VMware Workstation Pro.Ink。解决方法(附 VMware_workstation 12的安装方法)

    电脑之前装过VMware 10,很长时间没用就卸载了,也没有在意卸载的干不干净,直到最近需要用Linux系统,重新安装了VMware 12,就出现下面这样的情况: 警告1909.无法创建快捷方式VMw ...

随机推荐

  1. python time模块总结

    常用函数: import time --------------------------------------------------time.time()                      ...

  2. sublime 指定打开某文件的类型(text/plain)

    看下图,点击open all width ...选取你指定文件,以后打开都是你指定文件类型

  3. 谈谈javascript数组排序方法sort()的使用,重点介绍参数使用及内部机制?

    语法:arrayObject.sort(sortby) 参数sortby可选,规定排序顺序,必须是函数: 注:如果调用该方法时没有使用参数,将按字符编码的顺序进行排序,要实现这一点,首先应把数组的元素 ...

  4. JavaScript学习(五)

  5. dispatch_queue_set_specific可重入的gcd

    有时候我们很希望知道当前执行的queue是谁,比如UI操作需要放在main queue中执行.如果可以知道当前工作的queue是谁,就可以很方便的指定一段代码操作在特定的queue中执行.这种做法让G ...

  6. 20170811 使用Bootstrap框架写个页面

    采用Bootstrap-table 做的页面. 1. 增加Query 查询功能,涉及Ajax 来加载页面数据吧! <meta charset="UTF-8">  < ...

  7. [CC]Mesh文件保存

    CC中有两个地方使用了文件保存,一个是MainWindow,另一个是ccCommandLineParser. MainWindow的保存按钮关联的槽是doActionSaveFile()方法,实现了点 ...

  8. 万恶之源 - Python模块二

    shelve 我们之前学了json和pickle模块 这些都是序列化的模块,咱们进行在讲一个序列化的东西 叫做shelve 你们肯定有个疑问,这个东西和那个类似为什么要讲.是因为这个模块比较简单的,并 ...

  9. sap 调试工具,修改变量值

    1: 点击修改,输入变量值,按enter键.

  10. 微信小程序--修改data数组或对象里面的值

    1.初始data数据 Page({     data:{          code:'1234',         reward:[{             name:"艾伦" ...