LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1789|回复: 14

有没有让脚本在登陆桌面后自动执行的通用配置文件?

[复制链接]
发表于 2007-8-27 22:49:06 | 显示全部楼层 |阅读模式
我知道gnome放在~/.config/autostart,kde放在~/.kde/autostart里面可以做到,不过我想让脚本无论在那种桌面环境都可以自动执行,应该放在哪里呢?也就是执行了startx之类的命令之后才执行的。谢谢!
发表于 2007-8-27 23:14:26 | 显示全部楼层
~/.xinitrc
回复 支持 反对

使用道具 举报

发表于 2007-8-28 01:35:39 | 显示全部楼层
在/etc/X11/xinit/xinit.d目录下
好像是这个具体记不清了  多按tab试一下
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-28 10:18:59 | 显示全部楼层
好像不行啊,我写了一个很简单的脚本,叫~/autorun.sh,内容很简单,就是一行:
echo `date` >> ~/startx.log
我试过修改/etc/X11/xinit/xinitrc文件,在文件后面添加:
. /home/dorice/autorun.sh
没用。然后试过在自己home目录下面创建一个.initrc文件,也没用;而且没有发现有xinit.d这个目录,只有一个xinput.d目录,放在这里面也没用。
我用的是ubuntu7.04,但是脚本不一定在ubuntu运行
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-28 10:21:03 | 显示全部楼层
而且xinitrc好像是在gnome等桌面启动完成之前就运行了的吧?如果我的是gui程序怎么办?
回复 支持 反对

使用道具 举报

发表于 2007-8-28 21:16:35 | 显示全部楼层
/etc/xdg/autostart/
注意里面是desktop文件
debian/ubuntu下通过
回复 支持 反对

使用道具 举报

发表于 2007-8-28 21:33:03 | 显示全部楼层
Post by dorice
而且xinitrc好像是在gnome等桌面启动完成之前就运行了的吧?如果我的是gui程序怎么办?
gui程序中的“g”可不是指gnome...
只要X启动了,gui程序找到display就能运行了。

另外,我不懂Ubuntu,感觉这个发行版很怪异。
回复 支持 反对

使用道具 举报

发表于 2007-8-28 21:54:38 | 显示全部楼层
/etc/X11/Xsession这是肯定会执行的.
它会调/etc/X11/Xsession.d里的文件, 所以里面的文件也会被执行.
具体man Xsession
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-30 15:30:00 | 显示全部楼层
Post by huan
/etc/xdg/autostart/
注意里面是desktop文件
debian/ubuntu下通过

这个的确可以,但是是不是所有发行版都可以?如果用户桌面是fvwm之类的行不行?
Post by lastart
/etc/X11/Xsession这是肯定会执行的.
它会调/etc/X11/Xsession.d里的文件, 所以里面的文件也会被执行.
具体man Xsession

这个在ubuntu下面试过好像没有效果啊!我把脚本放在Xsession.d里面了,但是不行!
我现在需要在所有发行版都支持才行。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-30 16:45:21 | 显示全部楼层
我现在想把脚本写在rc.local里面,不过需要等待xwindow启动完成,我用sleep来等待一段时间,确定xwindow启动完之后,执行
  1. xterm -display :0 -e "command"
复制代码

但是不行,提示
Xlib: connection to ":0.0" refused by server
Xlib: No protocol specified
……

不知道是什么原因?我在终端上运行这条命令是可以正常执行的
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表