有没有办法在锁定当前 KDE 会话时运行 bash 脚本?
答案1
答案2
在 KDE 和其他一些桌面环境中,您可以在 dbus 上监听接口org.freedesktop.ScreenSaver
。
执行此操作的脚本如下所示:
dbus-monitor --session "type='signal',interface='org.freedesktop.ScreenSaver'" |
while read x; do
case "$x" in
# You can call your desired script in the following line instead of the echo:
*"boolean true"*) echo SCREEN_LOCKED;;
*"boolean false"*) echo SCREEN_UNLOCKED;;
esac
done
另请参阅这个问题了解更多信息。
答案3
我能想到的一种解决方法是(如果您通常使用键盘快捷键来锁定)将键盘快捷键从锁定重新绑定以执行脚本,然后锁定会话,这可以在脚本中使用以下命令来实现:
qdbus org.freedesktop.ScreenSaver /ScreenSaver Lock
不过我没有使用kde,所以无法测试。
如果你不使用键盘快捷键,我认为做到这一点会更困难。一种可能的方法是分叉锁定程序来查找脚本并执行它。