diff options
author | Rob Landley <rob@landley.net> | 2012-08-25 14:25:22 -0500 |
---|---|---|
committer | Rob Landley <rob@landley.net> | 2012-08-25 14:25:22 -0500 |
commit | 3a9241add947cb6d24b5de7a8927517426a78795 (patch) | |
tree | d122ab6570439cd6b17c7d73ed8d4e085e0b8a95 /toys/other/w.c | |
parent | 689f095bc976417bf50810fe59a3b3ac32b21105 (diff) | |
download | toybox-3a9241add947cb6d24b5de7a8927517426a78795.tar.gz |
Move commands into "posix", "lsb", and "other" menus/directories.
Diffstat (limited to 'toys/other/w.c')
-rw-r--r-- | toys/other/w.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/toys/other/w.c b/toys/other/w.c new file mode 100644 index 00000000..50f2283b --- /dev/null +++ b/toys/other/w.c @@ -0,0 +1,36 @@ +/* vi: set sw=4 ts=4: + * + * w.c - shows logged in users + * + * Copyright 2012 Gaurang Shastri <gmshastri@gmail.com> + * + * Not in SUSv4. + +USE_W(NEWTOY(w, NULL, TOYFLAG_USR|TOYFLAG_BIN)) + +config W + bool "w" + default y + help + usage: w + + Show who is logged on and since how long they logged in. +*/ + +#include "toys.h" + +void w_main(void) +{ + struct utmpx *x; + + xprintf("USER TTY LOGIN@ FROM"); + setutxent(); + while ((x=getutxent()) != NULL) + if (x->ut_type==7) { + time_t tt = x->ut_tv.tv_sec; + + xprintf("\n%-9.8s%-9.8s %-4.24s (%-1.12s)", x->ut_user, x->ut_line, + ctime(&tt), x->ut_host); + } + xputc('\n'); +} |