早些时候,我问了一个相似问题,但是那个是关于运行系统级脚本的。
我有一个脚本,它运行一系列xinput命令,以便在我的触摸屏上启用双指滚动。它必须在每次计算机休眠和醒来时重新运行,并且必须在X11会话中运行。当计算机醒来时,如何触发在我的X11桌面上运行的脚本?
我怀疑有办法用DBUS做这件事,但我对细节还不太清楚。也许有更强大的DBUS-fu的人能给我指明正确的方向。
发布于 2011-03-11 20:09:35
尝试导出现有X会话的DISPLAY变量。
假设它是:0,那么在脚本的开头添加以下内容(至少在运行任何与X相关的命令之前)。
export DISPLAY=":0"我认为,您还可能需要在现有的X终端中运行以下命令,从而授予本地主机授权。(我假设是你,而且只有你在这个系统上,如果不是,这将使其他本地用户访问你的X显示器)
xhost +localhost我已经有一段时间没有和X玩过了,所以希望有人能来纠正我。
发布于 2011-03-11 20:09:47
如果安装了gnome-control-center,运行gnome-mouse-properties并访问Touchpad选项卡,然后单击双指滚动:

它工作得很好,而且贯穿整个觉醒。因此,除非您也将脚本用于其他方面,否则请将它们扔掉:)
发布于 2011-05-11 08:09:07
编辑:看来我的阅读能力受损了,我不认为这会对X11方面有帮助,对不起。
如果您的系统使用pm-utils包进行睡眠/唤醒,则可以将脚本放入
/etc/pm/瞌睡
下面是一个脚本,用于在hibernate之后附加我的串行鼠标:
#!/bin/sh
# Action script to ensure that serial mouse works
# after a hibernate/suspend
#
# Copyright: Copyright (c) 2009 Michael Vogt
# License: GPL-2
#
PATH=/sbin:/usr/sbin:/bin:/usr/bin
SELF=attach-serial-mouse
COMMAND=
IFPLUGD_IFACE=
# pm-action(8) - <action> <suspend method>
#
case "${1}" in
hibernate)
# nothing
;;
resume|thaw)
inputattach --daemon -ms3 /dev/ttyS0
;;
esac我把它保存为00_attach_serial_mouse。
https://unix.stackexchange.com/questions/9112
复制相似问题