Se você estiver usando o Unity como ambiente de área de trabalho
qdbus org.gnome.ScreenSaver /com/canonical/Unity/Session com.canonical.Unity.Session.IsLocked
imprimirá true
se a tela estiver bloqueada e false
caso contrário
Eu tenho um script que precisa detectar se a tela está ou não bloqueada e se a proteção está ativa.
No Ubuntu 12, eu costumava chamar gnome-screensaver-command -q
. Este comando ainda está disponível em 16.04, mas sempre informa que o protetor de tela está inativo.
Eu testei executando este script:
#!/bin/bash
while true; do
echo "Checking..."
gnome-screensaver-command -q;
sleep 1;
done
e, em seguida, bloqueei minha tela por vários segundos. Ele informa "O protetor de tela está inativo" o tempo todo.
O que mudou no Ubuntu 16.04 para quebrar isso, e como obter um relatório preciso sobre se a tela está bloqueada ou não?
Editar: estou usando o Gnome.
Se você estiver usando o Unity como ambiente de área de trabalho
qdbus org.gnome.ScreenSaver /com/canonical/Unity/Session com.canonical.Unity.Session.IsLocked
imprimirá true
se a tela estiver bloqueada e false
caso contrário