Vielleicht magst du ja sowas....
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
use strict;
use warnings;
use Data::Dumper;
my %userlist = ();
while (my $line = <DATA>) {
chomp($line);
my %row = ();
@row{qw/user locked uid gid comment home shell/} = split /:/, $line;
$userlist{$row{user}} = \%row;
}
while ( 1 ) {
print "\nWelcher Benutzer soll angezeigt werden? ";
chomp(my $user = <STDIN>);
if ($userlist{$user}) {
print "\nDaten des Benutzers $user aus passwd :";
print "\nUser-ID: $userlist{$user}{uid}";
print "\nGroup-ID: $userlist{$user}{gid}";
print "\nKommentar: $userlist{$user}{comment}";
print "\nHome-Verz: $userlist{$user}{home}";
print "\nShell: $userlist{$user}{shell}\n";
} else {
print "Diesen Benutzer gibt es nicht!\n";
}
}
__END__
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
# ./foo.pl
Welcher Benutzer soll angezeigt werden? foobar
Diesen Benutzer gibt es nicht!
Welcher Benutzer soll angezeigt werden? root
Daten des Benutzers root aus passwd :
User-ID: 0
Group-ID: 0
Kommentar: root
Home-Verz: /root
Shell: /bin/bash
Welcher Benutzer soll angezeigt werden?
...
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.