linux - quando o protetor de tela foi ativado?

0

Às vezes adormeço quando uso meu computador. É possível determinar a que horas a proteção de tela foi ativada e, portanto, quando parei de usar o computador e adormeci?

    
por user114558 10.07.2013 / 19:28

1 resposta

2

Você pode simplesmente escrever um script bash para verificar se o protetor de tela está sendo executado.

Eu escrevi uma rápida que você poderia fundo, claro que as coisas podem ser adicionadas para que ela funcione bem de acordo com suas necessidades

#!/bin/bash
while [ 1 ]
do
tester=$(ps aux | grep gimp | grep -v "grep") #or whatever your screensaver application is called
  if [[ "$tester" != '' ]]; then
  echo $tester > info.txt
  exit
fi
done

Você pode adicionar um sleep 2 ou algo no meio, e depois fazer o background, mas o programa terá que ser executado novamente toda vez que seu screensaver for executado, você provavelmente poderá configurar algo para verificar se está executando ou não em um cron, realmente o céu é o limite com esses scripts.

no final você terá uma linha ps aux impressa em um arquivo e dentro dessa linha terá o tempo que o programa começou.

se você quiser continuar, como um log para quando a tela adormecer, você sempre pode alterar o > para um >> e isso adicionará a nova linha a cada vez.

Espero que isso ajude!

Acabei de perceber uma maneira fácil de tornar isso mais um serviço constante:

#!/bin/bash
while [ 1 ]
do
tester=$(ps aux | grep gimp | grep -v "grep") #or whatever your screensaver application is called
  if [[ "$tester" != '' ]]; then
  echo $tester > info.txt
  while ["$(ps aux | grep gimp | grep -v "grep")" != '']
   do  
   sleep 2
   done
fi
sleep 15
done
    
por 11.07.2013 / 18:42