5 votos

¿Cómo puedo ver cuánto tiempo mi equipo ha estado activo (como en la no inactivo)

He visto una variedad de soluciones para comprobar cuánto tiempo mi equipo ha estado inactivo, y sé que puedo comprobar cuánto tiempo desde el último reinicio de con uptime, pero me pregunto si hay una manera de ver cómo el tiempo desde mi equipo fue el último de inactividad. Tal vez desde la última vez que la configuración de ahorro de energía patadas, además de la última hora desde el protector de pantalla activado / monitor apagado, etc?

Estoy bien utilizando un applescript o comando de shell para determinar esto, si esas son las mejores soluciones.

3voto

Ryan Colley Puntos 43

Usted también puede encontrar el tiempo de inactividad en UNIX mediante la ejecución de

ioreg -c IOHIDSystem

Y buscando la devuelve HIDIdleTime

O podría ejecutar un script de shell en idle como tal, sólo tiene que llamar a cada 30 segundos o así, utilizando LaunchD. Asegúrese de poner el launchd archivo xml en /Library/LaunchDaemons por lo que se ejecuta incluso cuando ningún usuario ha iniciado sesión, o /Library/LaunchAgents/ si sólo desea que se ejecute cuando alguien se registra en la máquina.

#!/bin/bash
idl=$"`ioreg -c IOHIDSystem | awk '/HIDIdleTime/ {print int($NF/1000000000); exit}'`"
idletime="600"
if [ $idl -gt $idletime ]; then
#Your
#Code
#Here
fi

2voto

Steve Evans Puntos 155

Puede utilizar la siguiente secuencia de comandos para mostrar la inactividad segundos contados, a partir de la Inactividad y el Tiempo de Inactividad en OS X:

#!/usr/bin/env perl
my $idle_seconds_command = 'echo $((`ioreg -c IOHIDSystem | sed -e \'/HIDIdleTime/ !{ d\' -e \'t\' -e \'}\' -e \'s/.* = //g\' -e \'q\'` / 1000000000))';
print "Counting seconds of inactivity... Command + Period (.) to quit\n\n";
do {
    my $idle_seconds = `$idle_seconds_command`;
    chomp($idle_seconds);
    print "Idle for $idle_seconds seconds.\n";
    sleep(1);
} while(1);

Cuando se ejecuta el script imprime una línea cada segundo muestra el contador de tiempo de inactividad.

Idle seconds on OS X

1voto

Ryan Colley Puntos 43

Usted puede utilizar un applescript.

en idle mostrar cuadro de diálogo de "Hey, tu equipo no estaba ocupada, así que pensé que iba a higjack" final de inactividad

Guardar como una aplicación y que siga funcionando en segundo plano. Tal vez sólo tiene que escribir una marca de tiempo en un archivo para leer más tarde?

-2voto

Ryan Colley Puntos 43

Aquí es un ejemplo LaunchD archivo XML.

http://u.wanttogo.to/I9p4

Poner en /Library/LaunchDaemons/ si desea que se ejecute, incluso cuando nadie está conectado o en /Library/LaunchAgents/ si sólo desea que se ejecute cuando alguien se registra en la máquina.

Colocar el script en /Library/Scripts/

Usted necesita asegurarse de que su LaunchD archivo plist es propietario de la root, el grupo de la rueda y los permisos 644.

chown root /Library/LaunchDaemons/com.my-company.my-name.plist
chgrp wheel /Library/LaunchDaemons/com.my-company.my-name.plist
chown 644 /Library/LaunchDaemons/com.my-company.my-name.plist

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X