w.c 653 B

12345678910111213141516171819202122232425262728293031323334
  1. /* w.c - shows logged in users
  2. *
  3. * Copyright 2012 Gaurang Shastri <gmshastri@gmail.com>
  4. USE_W(NEWTOY(w, NULL, TOYFLAG_USR|TOYFLAG_BIN))
  5. config W
  6. bool "w"
  7. default y
  8. depends on TOYBOX_UTMPX
  9. help
  10. usage: w
  11. Show who is logged on and since how long they logged in.
  12. */
  13. #include "toys.h"
  14. void w_main(void)
  15. {
  16. struct utmpx *x;
  17. xprintf("USER TTY LOGIN@ FROM");
  18. setutxent();
  19. while ((x=getutxent()) != NULL) {
  20. if (x->ut_type==7) {
  21. time_t tt = x->ut_tv.tv_sec;
  22. xprintf("\n%-9.8s%-9.8s %-4.24s (%-1.12s)", x->ut_user, x->ut_line,
  23. ctime(&tt), x->ut_host);
  24. }
  25. }
  26. xputc('\n');
  27. }