freebsd-nq/contrib/perl5/eg/myrup

30 lines
891 B
Perl

#!/usr/bin/perl
# $RCSfile: myrup,v $$Revision: 4.1 $$Date: 92/08/07 17:20:26 $
# This was a customization of ruptime requested by someone here who wanted
# to be able to find the least loaded machine easily. It uses the
# /etc/ghosts file that's defined for gsh and gcp to prune down the
# number of entries to those hosts we have administrative control over.
print "node load (u)\n------- --------\n";
open(ghosts,'/etc/ghosts') || die "Can't open /etc/ghosts: $!";
line: while (<ghosts>) {
next line if /^#/;
next line if /^$/;
next line if /=/;
($host) = split;
$wanted{$host} = 1;
}
open(ruptime,'ruptime|') || die "Can't run ruptime: $!";
open(sort,'|sort +1n');
while (<ruptime>) {
($host,$upness,$foo,$users,$foo,$foo,$load) = split(/[\s,]+/);
if ($wanted{$host} && $upness eq 'up') {
printf sort "%s\t%s (%d)\n", $host, $load, $users;
}
}