[已解决]求脚本:不同的桌面环境自启动不同的程序

sh/bash/dash/ksh/zsh等Shell脚本
回复
linsuyu
帖子: 49
注册时间: 2011-08-30 0:09

[已解决]求脚本:不同的桌面环境自启动不同的程序

#1

帖子 linsuyu » 2012-08-16 16:26

事情如下:
我的ubuntu同时有安装unity和kde,在unity中我设置了开机自启动docky和conky,但是登陆到kde后这两个程序也自启动,这样就和kde的主题非常不和谐了,docky挡住了kde的任务栏,conky根本不能嵌入桌面,而且红色和kde的灰色非常不搭调。所以我想求一个脚本,希望开机自动运行这个脚本,自动判断登陆的是哪一个桌面环境,然后执行启动相应的程序或不启动那个程序。求大大赐教! :em06


非常感谢各位的解答,我又查找了相关资料,终于解决了这个问题,现在贴出来也为有相同问题的朋友提供参考。我尽量写的详细一些。
其实ubuntu的自启动程序脚本的位置在~/.config/autostart/下,你打开就会看到一些xx.desktop的文件,用gedit编辑相应的文件,在最后加上
OnlyShowIn=KDE或GNOME或Unity,就可以实现这个程序只在某个桌面环境下自启动了。


PS:网上有一篇名为《如何让KDE与GNOME的启动项彼此分开》的文章,我就是参照这个改的,但是这篇文章的方法有一些错误(也可能是新版本ubuntu不一样),我的是ubuntu12.04,经实测,语法为“OnlyShowIn=”而不是“ShowOnlyIn=”;另外KDE和GNOME都是大写,Unity是首字母大写。
上次由 linsuyu 在 2012-08-17 12:44,总共编辑 1 次。
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 求脚本:不同的桌面环境自启动不同的程序

#2

帖子 eexpress » 2012-08-16 16:38

会话启动,本来就是wm自己管理的。凭啥kde会启动docky/conky。你找找,是不是kde多管闲事,有merge了啥。
记得某.kde下有merge目录。
● 鸣学
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: 求脚本:不同的桌面环境自启动不同的程序

#3

帖子 funicorn » 2012-08-16 16:46

代码: 全选

$ echo $XDG_CURRENT_DESKTOP
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 求脚本:不同的桌面环境自启动不同的程序

#4

帖子 lilydjwg » 2012-08-16 17:09

funicorn 写了:

代码: 全选

$ echo $XDG_CURRENT_DESKTOP
空的
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: 求脚本:不同的桌面环境自启动不同的程序

#5

帖子 funicorn » 2012-08-16 23:17

lilydjwg 写了:
funicorn 写了:

代码: 全选

$ echo $XDG_CURRENT_DESKTOP
空的
不可能,你确定用的是unity?
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 求脚本:不同的桌面环境自启动不同的程序

#6

帖子 lilydjwg » 2012-08-16 23:29

funicorn 写了:
lilydjwg 写了:
funicorn 写了:

代码: 全选

$ echo $XDG_CURRENT_DESKTOP
空的
不可能,你确定用的是unity?
我确定不是。
头像
20sanguo
帖子: 794
注册时间: 2008-05-10 9:53

Re: 求脚本:不同的桌面环境自启动不同的程序

#7

帖子 20sanguo » 2012-08-17 10:37

init.d里建一个文件:服务 u或k特有程序 starting时加载各自服务看看
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: 求脚本:不同的桌面环境自启动不同的程序

#8

帖子 funicorn » 2012-08-17 11:04

lilydjwg 写了:
funicorn 写了:
lilydjwg 写了:
funicorn 写了:

代码: 全选

$ echo $XDG_CURRENT_DESKTOP
空的
不可能,你确定用的是unity?
我确定不是。
那你前面说的不全是废话么,既然不用unity,把unity启动脚本删掉不就行了
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 求脚本:不同的桌面环境自启动不同的程序

#9

帖子 lilydjwg » 2012-08-17 11:17

funicorn 写了:
lilydjwg 写了:
funicorn 写了:
lilydjwg 写了:
funicorn 写了:

代码: 全选

$ echo $XDG_CURRENT_DESKTOP
空的
不可能,你确定用的是unity?
我确定不是。
那你前面说的不全是废话么,既然不用unity,把unity启动脚本删掉不就行了
我又没有 unity 启动脚本。你读帖不看发帖人的么?
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: 求脚本:不同的桌面环境自启动不同的程序

#10

帖子 funicorn » 2012-08-17 11:29

lilydjwg 写了:
funicorn 写了:
lilydjwg 写了:
funicorn 写了:
lilydjwg 写了:
funicorn 写了:

代码: 全选

$ echo $XDG_CURRENT_DESKTOP
空的
不可能,你确定用的是unity?
我确定不是。
那你前面说的不全是废话么,既然不用unity,把unity启动脚本删掉不就行了
我又没有 unity 启动脚本。你读帖不看发帖人的么?
那我一开始是回给楼主看的,你不用unity你捣什么乱
头像
lilydjwg
论坛版主
帖子: 4258
注册时间: 2009-04-11 23:46
系统: Arch Linux
联系:

Re: 求脚本:不同的桌面环境自启动不同的程序

#11

帖子 lilydjwg » 2012-08-17 13:12

funicorn 写了:
lilydjwg 写了:
funicorn 写了:
lilydjwg 写了:
funicorn 写了:
lilydjwg 写了:
funicorn 写了:

代码: 全选

$ echo $XDG_CURRENT_DESKTOP
空的
不可能,你确定用的是unity?
我确定不是。
那你前面说的不全是废话么,既然不用unity,把unity启动脚本删掉不就行了
我又没有 unity 启动脚本。你读帖不看发帖人的么?
那我一开始是回给楼主看的,你不用unity你捣什么乱
正因为我不用 unity 所以才不对嘛。你又没说只能 unity 用。看上去那个环境变量可以用于判断桌面环境,但似乎支持不是很广泛的样子。
头像
YeLee
论坛版主
帖子: 26406
注册时间: 2008-08-13 8:48
系统: Fundu i64
来自: 东海硇州,一双管钥。
联系:

Re: [已解决]求脚本:不同的桌面环境自启动不同的程序

#12

帖子 YeLee » 2012-08-17 13:14

我这边是DESKTOP_SESSION。 :em06 :em06 :em06
◎当我站在道德的高度上俯视别人的时候,发现自己是多么渺小。
♥执着但不偏激,反对而不排斥,坚决捍卫矛盾体的存在方式。
★★★天气预报★★★
fcitx-yatable一个可以使用的码表输入法
[教程]几个实例攻克软件编译难关
Gentoo Development Guide
字体相关
funicorn
帖子: 1318
注册时间: 2005-09-13 4:56
系统: Ubuntu Jammy Jellyfi

Re: 求脚本:不同的桌面环境自启动不同的程序

#13

帖子 funicorn » 2012-08-17 13:40

对楼主来说足够了,这个变量在unity下的值是unity,在kde下是什么我不知道,但是我肯定它不会是unity
lilydjwg 写了:
funicorn 写了:
lilydjwg 写了:
funicorn 写了:
lilydjwg 写了:
funicorn 写了:
lilydjwg 写了:
funicorn 写了:

代码: 全选

$ echo $XDG_CURRENT_DESKTOP
空的
不可能,你确定用的是unity?
我确定不是。
那你前面说的不全是废话么,既然不用unity,把unity启动脚本删掉不就行了
我又没有 unity 启动脚本。你读帖不看发帖人的么?
那我一开始是回给楼主看的,你不用unity你捣什么乱
正因为我不用 unity 所以才不对嘛。你又没说只能 unity 用。看上去那个环境变量可以用于判断桌面环境,但似乎支持不是很广泛的样子。
tusooa
帖子: 6548
注册时间: 2008-10-31 22:12
系统: 践兔
联系:

Re: [已解决]求脚本:不同的桌面环境自启动不同的程序

#14

帖子 tusooa » 2012-08-27 14:26

以前写过wrapper。现在都不知道哪去了。

代码: 全选

] ls -ld //
回复