[Newbies] .desktop 文件用什么命令打开?
Tofloor
poster avatar
无屏本
deepin
2022-05-27 18:20
Author

同题。

重点是在终端下是什么命令打开,比如:

$> deepin-editor xxx.desktop

这样的。

源码编译安装了GTK4.7,生成的桌面文件 (.desktop)无法打开,现象是双击后鼠标指针短暂变成一个感觉是晃装着蓝水的圆烧瓶的动画。

然后就没反应了。但是在终端下输入程序名(gtk4-demo )后程序是可运行的。

使用xdg-open 文件名。会打开文本编辑器打开这个.desktop文件,但是系统的.desktop(文本编辑器)却能正确打开。复制系统的文件修改执行文件一样不行。

edge(beta)的桌面文件 也没问题,复制修改后却一样不行。这些gtk的程序在ubuntu22上是没问题的。

请问这个如何设置。

Reply Favorite View the author
All Replies
delsin
deepin
2022-05-27 19:15
#1

你说的打开是什么意思?是指运行.desktop图标文件还是编辑.desktop图标文件?

一、运行.desktop图标文件

方法1:双击运行

方法2:把.desktop图标文件拖进终端,回车

二、编辑.desktop图标文件

方法1:把.desktop后缀改为.txt,就可以用文本编辑器来编辑了

方法2:右键.desktop图标文件,打开方式选择文本编辑器。

Reply View the author
enforcee
deepin
2022-05-27 19:34
#2

可以用gtk-launch 启动器名(不加路径)

Reply View the author
lanxing0821
deepin
2022-05-28 01:27
#3

这玩意说白了就是个配置文件,写个脚本或者函数解析它就行了。举个例子,在~/.bashrc文件末尾添加如下内容:

# 直接运行.desktop文件的函数
run() {
I=$IFS; IFS=$'\n'
DesktopEntryFile="$1"
for i in $(cat "$DesktopEntryFile" | grep '^Exec=' | sed -n '1p');do
    eval ${i#*=}
done
IFS=$I
}

重启终端生效,运行

run ".desktop文件的路径"

可以直接运行.desktop文件。

Reply View the author
无屏本
deepin
2022-05-28 16:17
#4
enforcee

可以用gtk-launch 启动器名(不加路径)

~/local/share/applications$ gtk-launch
bash: gtk-launch:未找到命令
Reply View the author
无屏本
deepin
2022-05-28 16:30
#5
lanxing0821

这玩意说白了就是个配置文件,写个脚本或者函数解析它就行了。举个例子,在~/.bashrc文件末尾添加如下内容:

# 直接运行.desktop文件的函数
run() {
I=$IFS; IFS=$'\n'
DesktopEntryFile="$1"
for i in $(cat "$DesktopEntryFile" | grep '^Exec=' | sed -n '1p');do
    eval ${i#*=}
done
IFS=$I
}

重启终端生效,运行

run ".desktop文件的路径"

可以直接运行.desktop文件。

嗯 。这个可以打开

不过我可以直接在终端运行.desktop文件中EXEC=的程序,这样还是在终端执行。

有没有设置一下某个配置文件,然后双击图标就打开的方法?

Reply View the author
无屏本
deepin
2022-05-28 16:40
#6
delsin

你说的打开是什么意思?是指运行.desktop图标文件还是编辑.desktop图标文件?

一、运行.desktop图标文件

方法1:双击运行

方法2:把.desktop图标文件拖进终端,回车

二、编辑.desktop图标文件

方法1:把.desktop后缀改为.txt,就可以用文本编辑器来编辑了

方法2:右键.desktop图标文件,打开方式选择文本编辑器。

拖图标进终端显示下面的信息:

~$ '/home/xxx/local/share/applications/org.gtk.Demo4.desktop'
bash: /home/xxx/local/share/applications/org.gtk.Demo4.desktop: 权限不够
~$ sudo '/home/xxx/local/share/applications/org.gtk.Demo4.desktop'
请输入密码:
验证成功
sudo: /home/xxx/local/share/applications/org.gtk.Demo4.desktop:找不到命令

双击没反应,只的一个球中蓝水晃动的动画显示几秒就完了,什么也没有出现。

Reply View the author