Seite 1 von 1

Zeitpunkt des Bootens anzeigen

Verfasst: Sonntag 2. Oktober 2011, 13:57
von snafu
Ich wollte gerade wissen, wann ich heute morgen aufgestanden bin. ^^ Da ich den Rechner immer kurz nach dem Wachwerden einschalte, bin ich einfach nach der Ausgabe von `uptime` gegangen. Weil dies aber totaaaal viel Rechnerei ist, habe ich mir jetzt ein Skript geschrieben, welches nicht die Stunden und Minuten anzeigt, seit denen der Rechner läuft, sondern stattdessen die Uhrzeit des Einschaltens. Vielleicht braucht das ja sonst noch jemand... :)

Code: Alles auswählen

from datetime import datetime
import time

UPTIME_FILE = '/proc/uptime'

def get_elapsed_seconds():
    """
    Return elapsed seconds since the kernel was started as a float.
    """
    with open(UPTIME_FILE) as upf:
        uptime, idle = upf.read().split()
    return float(uptime)

def get_start_time():
    """
    Return a ``datetime``-struct, representing the time, when the 
    kernel was started.
    """
    elapsed = get_elapsed_seconds()
    now = time.time()
    start_time = now - elapsed
    return datetime.fromtimestamp(start_time)

def main():
    print 'Kernel started at {0}'.format(get_start_time().ctime())

if __name__ == '__main__':
    main()

Re: Zeitpunkt des Bootens anzeigen

Verfasst: Sonntag 2. Oktober 2011, 15:50
von lunar
@snafu: "ls -ld /sys" hätte Dir das auch so verraten.

Re: Zeitpunkt des Bootens anzeigen

Verfasst: Sonntag 2. Oktober 2011, 22:03
von snafu
Japp, oder man nimmt als Referenz einfach eine bestimmte Logdatei. Da gibt es sicherlich diverse Möglichkeiten. Die Umrechnung über `/proc/uptime` ist da eigentlich noch relativ umständlich gewählt. Das ist aber auch mehr eine kleine Sache aus Spass an der Freude gewesen. ;)