#!/opt/bin/perl5 # ######################################################################### # # # # # # ######################################################################### # # # Version 1.0 - Written 22.12.95 by Steffen Beyer # # # ######################################################################### # # # Copyright (C) 1995 by software design & management GmbH & Co. KG # # # ######################################################################### $self = $0; $self =~ s!^.*/!!; $version = 'version 1.0'; setpwent; while (($user,$passwd,$uid,$gid,$quota,$comment,$gcos,$dir,$shell) = getpwent) { if (($uid >= 10000) && ($uid < 20000)) { $name = $gcos; $name =~ s/^\s*//; $name =~ s/\s*$//; $name =~ s/[\t\r\n\f]/ /g; $name =~ s/ +/ /g; $name =~ s/\s*\(.*\)\s*$//; $name =~ s/^Dr[\.\s]\s*//; $name =~ s/-/ -/g; @names = split(' ', $name); $lastname = $name; $sortname = $name; if (@names == 0) { $name = "(no name)"; $lastname = $name; } else { if (@names > 1) { $lastname = pop(@names); foreach (@names) { ($_) = /^(-?.)/; } $name = join(".", @names) . "." . $lastname; } } $longname = substr($gcos,0,20); $name = substr($name,0,20); $list{"$lastname $sortname"} = sprintf("Name: %20s Kuerzel: %20s Login: %10s\n", $longname, $name, $user); } } endpwent; foreach (sort keys(%list)) { print $list{$_}; } __END__