www.mucker.at http://www.mucker.at Helmut Mucker de Benutzerbericht - ein Perl-Script http://www.mucker.at/2006//09#userrep_pl <!-- amazon-search: Perl --> <!-- amazon-mode: books --> <p> Dieses kleine Perl-Script gibt den von Benutzern eines UNIX-Systems verbrauchten Plattenplatz aus. <pre> #!/usr/bin/perl # show used discspace $|=1; my %groups; open IN, "/usr/bin/ypcat group | sort |"; while (<IN>) { chop; ($groupname,$pw,$gid,$members) = split ":", $_; $groupname{"$gid"} = $groupname; foreach $user (split ",", $members) { $his_groups{$user} .= ",".$groupname; } $groupname{$gid} = $groupname; } open IN, "/usr/bin/ypcat passwd | grep home_wol | sort |"; while (<IN>) { chop; ($user,$pw,$uid,$gid,$info,$home,$shell) = split ":", $_; ($name,$location,$tel,$add) = split ",", $info; $his_groups{$user} = $groupname{$gid} . $his_groups{$user}; if ($pw ne "NOLOGIN") {$pw = "";} else {$pw = "DISABLED";} printf "%-10s",$user; printf "%-30s",$name; printf "%-19s",$home; if (-d $home) { open DU, "du -sk $home |"; $in = <DU>; chop $in; } else { $in = "NONE"; } ($size,$dirname) = split /\W+/,$in; printf "%+10s",$size; printf " %-10s",$pw; print "\n"; } </pre> </p>