#!/usr/local/bin/perl -w use strict; my $password; open F, '/etc/passwd'; while () { my ($nam, $pwd, $uid, $gid, $dsc, $hom, $shl) = split /:/, $_; my @attrs = \($nam, $pwd, $uid, $gid, $dsc, $hom, $shl); foreach my $attr (@attrs) { $password->{"$nam"}->{"$attr"} = $$attr; } } close F; use Data::Dumper; print Dumper $password;