#! /usr/bin/perl use warnings; use strict; my (%inf,%dir,@info,@keys,@philes,$phile,$key,$value,$dir,$info,$stat); use Cwd; $dir=Cwd->getcwd(); opendir(DIR,"$dir")or die "@!"; while ( $phile=readdir(DIR)){ if($phile=~/^\.$/){next;} elsif($phile=~/^\.\.$/){next;} elsif($phile=~/^(.*)$/){ info($phile); for $stat(keys %inf){ $dir{$phile}{$stat}=$inf{$stat}; } } ophile($phile); oinfo(); } sub info{ @info=stat($phile); @keys=qw(Dev Inode Mode Link UID GID RDev Size ATime MTime CTime Blksize Blocks); @inf{@keys}=@info; } sub ophile{ print "\nFILE:$phile\n-----------\n"; } sub oinfo{ for $value(keys %inf){ print "$value -> $inf{$value}\n"; } }