Linux
如何在螢幕鎖定/解鎖上執行腳本?
如果 Gnome 會話被鎖定和解鎖,我想執行一個腳本。
有沒有辦法在桌面被鎖定或解鎖時攔截它並執行某些操作?
當發生某些事情時,Gnome-screensaver 會在 dbus 上發出一些信號。
這裡是文件(帶有一些範例)。
您可以編寫一個執行的腳本:
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'"
這就是您隨時需要
dbus-monitor
列印的關於螢幕被鎖定/解鎖的行。這裡有一個 bash 命令來做你需要的:
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'" | while read x; do case "$x" in *"boolean true"*) echo SCREEN_LOCKED;; *"boolean false"*) echo SCREEN_UNLOCKED;; esac done
只需用你需要的替換
echo SCREEN_LOCKED
和。echo SCREEN_UNLOCKED