乌班图下设置桌面快捷方式(应用图标快速启动)
乌班图下设置桌面快捷方式(应用图标快速启动)
以idea为例
1.在官网下载安装包
比如这个:ideaIU-2021.1.3.tar.gz
2.解压到本地合适的位置
3.首先进去/usr/share/applications/复制一个简单点的desktop作为快捷启动
4.复制好了之后修改里面的内容,配置好name,sh,图标
[Desktop Entry]
Name=idea
Exec=sh /home/player3/idea/idea-IU-211.7628.21/bin/idea.sh
Terminal=false
Type=Application
Icon=/home/player3/idea/idea-IU-211.7628.21/bin/idea.png
Comment=idea
Categories=Application;
5.将你当前改好的文件复制或者剪切到/usr/share/applications/ 中,桌面就出现了idea 的图标了
cp idea.desktop /usr/share/applications/idea.desktop
最近学习了common的cli,对工具进行简单的提取
public static void main(String[] args) throws IOException {
Options options = new Options();
options.addOption(Option.builder("n").longOpt("name").hasArg(true).desc("文件名称,这个代表name和comment").hasArg().required().build());
options.addOption(Option.builder("e").longOpt("exec").hasArg(true).desc("启动命令信息").hasArg().required().build());
options.addOption(Option.builder("i").longOpt("icon").hasArg(true).desc("图标位置").hasArg().required().build());
options.addOption("h", "help", false, "帮助");
CommandLineParser parser = new DefaultParser();
HelpFormatter formatter = new HelpFormatter();
CommandLine cmd;
try {
cmd = parser.parse(options, args);
} catch (ParseException e) {
System.out.println(e.getMessage());
formatter.printHelp("utility-name", options);
System.exit(1);
return;
}
if (cmd.hasOption("h")) {
(new HelpFormatter()).printHelp("CommandLineOptions", options);
System.exit(0);
}
Preconditions.checkArgument(cmd.hasOption("name"), "需要填写name信息");
Preconditions.checkArgument(cmd.hasOption("exec"), "需要填写启动信息");
Preconditions.checkArgument(cmd.hasOption("icon"), "需要填写图标信息");
String name = cmd.getOptionValue("name").trim();
String exec = cmd.getOptionValue("exec").trim();
String icon = cmd.getOptionValue("icon").trim();
String pathDirectory="D:"+ File.separator +"todo"+ File.separator +"target";
File directory = new File(pathDirectory);
File[] fileList = directory.listFiles();
String fileName =name+".desktop";
boolean flag = false;
for (File file : fileList) {
if (file.isFile() && fileName.equals(file.getName())) {
flag = true;
break;
}
}
if (flag) {
System.out.println("该文件夹下存在文件:{},重新确认之后再次提交!"+fileName);
System.exit(0);
}
File file = new File(pathDirectory + File.separator + fileName);
file.createNewFile();
try {
FileWriter writer = new FileWriter(file, true); // 第二个参数为true表示追加写入
writer.write("[Desktop Entry]");
writer.write("\n"); // 换行
writer.write("Name="+name);
writer.write("\n"); // 换行
writer.write("Exec=sh "+exec);
writer.write("\n"); // 换行
writer.write("Terminal=false");
writer.write("\n"); // 换行
writer.write("Type=Application");
writer.write("\n"); // 换行
writer.write("Icon="+icon);
writer.write("\n"); // 换行
writer.write("Comment="+name);
writer.write("\n"); // 换行
writer.write("Categories=Application;");
writer.close();
System.out.println("写入成功!");
} catch (IOException e) {
System.out.println("写入文件时出现异常:" + e.getMessage());
}
}
工具的使用,进入到jar包的目录:
java -jar todo.jar -i /home/player3/idea/idea-IU-211.7628.21/bin/idea.png -n idea -e /home/player3/idea/idea-IU-211.7628.21/bin/idea.sh
---------------------------------------------------------------------------
国之殇,未敢忘!
南京大屠杀!
731部队!
以及核污染水排海等一系列全无人性的操作,购买他们的食品和为它们提供帮助只会更加变本加厉的害你,呼吁大家不要购买日本相关产品
昭昭前事,惕惕后人
吾辈当自强,方使国不受他人之侮!
---------------------------------------------------------------------------
作者:三号小玩家
出处:https://www.cnblogs.com/q1359720840/
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。 版权信息