Retorna o tempo ocioso em uma sessão do X

Publicado por Elder Marco (última atualização em 23/09/2010)

[ Hits: 4.752 ]

Homepage: http://www.eldermarco.com

Download xidle.c




Este é um programa simples que retorna o tempo ocioso em segundos de uma sessão do X. Creio que já deva ter uma implementação dele em algum programa, mas como não encontrei, decidi escrevê-lo para um colega em uma pergunta aqui no VOL.

Você pode compilar, mover ele para algum lugar no seu PATH e depois obter o tempo ocioso com o comando:

cut -f 1 -d ' ' <(xidle)

em algum script.

  



Esconder código-fonte

/*---------------------------------------------------------------------
 *    Imprime o tempo de inatividade de uma sessão do X em segundos.
 *    Caso haja algum problema, nada é impresso, mas o programa
 *    retorna 1.
 *
 *    Obs: Compile esse programa com o comando:
 *         $ gcc -o xidle xidle.c -lX11 -lXss 
 *
 *         Depois mova-o para um diretório no seu PATH (um bom local
 *         seria o diretório /usr/local/bin)
 *
 *    No Fedora, é necessário instalar o pacote 'libXScrnSaver-devel'
 *    e 'libX11-devel' para poder seguir com a compilação.
 *
 *                 Autor: Elder Marco <eldermarco@gmail.com>
 *                 Data : 13/09/2010
 *    Última modificação: 13/09/2010
 *---------------------------------------------------------------------*/
#include <X11/extensions/scrnsaver.h>
#include <X11/Xlib.h>
#include <X11/Xlibint.h>
#include <stdio.h>

int main() {
     XScreenSaverInfo *info = XScreenSaverAllocInfo();
     Display *display;

      if ((display = XOpenDisplay(NULL))){    
          XScreenSaverQueryInfo(display,
                                DefaultRootWindow(display),
                                info);
           printf("%.0f s\n", (float)info->idle/1000);
      }
     else 
        return 1;  

     Xfree(info);
     XCloseDisplay(display);
     return 0;
}

Scripts recomendados

Loop de Várias Váriáveis Em Um Único Laço "For" em C

Ordenação de dados

Introdução a Recursão

Calculadora em C separada por funções e com diretivas

Heap Sort em C


  

Comentários

Nenhum comentário foi encontrado.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts