Saya ingin menjalankan skrip jika sesi Gnome terkunci dan tidak terkunci.
Apakah ada cara agar saya dapat mencegat ini dan melakukan tindakan tertentu saat desktop terkunci atau tidak terkunci?
Jawaban yang Diterima:
Gnome-screensaver memancarkan beberapa sinyal pada dbus ketika sesuatu terjadi.
Berikut dokumentasinya (dengan beberapa contoh).
Anda dapat menulis skrip yang berjalan:
dbus-monitor --session "type='signal',interface='org.gnome.ScreenSaver'"
dan itu melakukan apa yang Anda butuhkan kapan saja dbus-monitor
mencetak baris tentang layar yang dikunci/dibuka.
Berikut perintah bash untuk melakukan apa yang Anda butuhkan:
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
Ganti saja echo SCREEN_LOCKED
dan echo SCREEN_UNLOCKED
dengan apa yang Anda butuhkan.
Bisakah Bash Menulis Ke Aliran Inputnya Sendiri?
Bagaimana Cara Mendapatkan Alamat Ip Sendiri Dan Menyimpannya Ke Variabel Dalam Script Shell?