summaryrefslogtreecommitdiff
path: root/eg/who
blob: 6543908853f77a288d1c3b0610e4b096c79e282f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
#!/usr/bin/perl
# This assumes your /etc/utmp file looks like ours
open(utmp,'/etc/utmp');
@mo = ('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec');
while (read(utmp,$utmp,36)) {
    ($line,$name,$host,$time) = unpack('A8A8A16l',$utmp);
    if ($name) {
	$host = "($host)" if $host;
	($sec,$min,$hour,$mday,$mon) = localtime($time);
	printf "%-9s%-8s%s %2d %02d:%02d   %s\n",
	  $name,$line,$mo[$mon],$mday,$hour,$min,$host;
    }
}