logged users



  • Hallo da drauussen!

    Ich wollt grad ein kleines Progrämmchen schreiben, dass mir die aktuell eingeloggten user Zeigt (ausgabe so ähnlich wie w oder finger), hab mir die Quellcodes runtergeladen, aber irgendwie werd ich da net schlau draus, in den Man pages hab ich auch schon rumgewühlt, und die ganzen utmp funcs ausprobiert, bekomms aber irgendwie net so hin wie w bzw. finger. Wär echt super wenn's mir einer erklären könnte. oder ein bsp zeigen könnte.



  • Schau Dir mal die Sourcen des Programms "users" aus den Shellutils an!



  • jo hab i au scho, bin aber net wirklich schlau daraus geworden.



  • man 1 users. Bei mir steht da zB unter 'FILES' '/var/run/utmp', und da steht dann auch normalerweise das drin, was 'users' ausgibt. Bei deiner Linux-Doku könnte sowas ähnliches zu finden sein.



  • ja und wenn man "man utmp" oder "man getutent" anschaut sieht man auch die Funktionen die dazugehören um utmp auszulesen. Aber wenn ich des so einbau:

    #include <utmp.h>
    #inclued <stdio.h>
    
    int main(void)
    {
       struct utmp *u;
    
       while((u = getutent()) != NULL)
      {
         printf("%s\n", u->ut_user);
      }
    
      return 0;
    }
    

    bekomm ich noch den ganzen login schotter und den anderen gruscht mit dazu. aber bei w (finger, pinky ....) kommen nur die eingeloggten user. Und ich steig nicht ganz dahinter wie die des machen.



  • SO nach langem extrem Quellcode reading bin ich dahintergestiegen wie es bei w funkt. (hab den quellcode (procps) im tmp gehabt und da hat der mir seit dem letzt reboot wohl was verworfen)

    Manchmal sind sachen einfach zu leicht, als das man sie bemerkt. ::-)

    SO jetzt hab ich aber immer noch des Problem mit proc/PID/stat und tty
    siehe weiter unten.

    Danke auf jeden fall an alle die mir weitergeholfen haben und denjenigen die es veruscht haben. Schkøl


Anmelden zum Antworten