use strict; my $login_name = getlogin; #my $path = "C:\\Dokumente und use File::stat; open (out,">file_count.csv"); print (out "Counts of files in a directory \n"); &funktAusgabe($path); close out; sub funktAusgabe() { my $zaehler=0; my $zaehler2= 0; my @ordner; my $anzDateien=0; my $anzDateien2=0; my $anzOrdner=0; my $local_time = localtime; my ($para1)=@_; opendir my $ordner,$para1; my @eintraege = readdir($ordner); foreach(@eintraege){ opendir $ordner,$para1; if($zaehler>1){ my $var=$para1.$_."\\"; push(@ordner,&funktIstOrdner($var)); if($ordner[$zaehler-2]==0){$anzDateien++;}else{$anzOrdner++;} # if($ordner[$zaehler-2]==0){$anzDateien++;} } $zaehler++; my $filesize=stat($para1.$_)->size; if($filesize>=1024){$anzDateien2++;} } $zaehler=0; foreach(@eintraege){ opendir $ordner,$para1; $zaehler++; } print(out "$local_time".";"."$anzDateien".";"."$anzDateien2".";"."$para1\n"); $zaehler=0; foreach (@eintraege) { opendir $ordner,$para1; my $var=$para1.$_."\\"; if($zaehler>1&&$ordner[$zaehler-2]==1){&funktAusgabe($var);} $zaehler++; } $zaehler2++; } sub funktIstOrdner(){ my $zaehler=0; my ($para1)=@_; opendir my $ordner,$para1; my @eintraege = readdir($ordner); foreach (@eintraege) { print @eintraege[$zaehler]; $zaehler++; if($zaehler>0){return 1;} } return 0; }