#!perl.exe use CGI qw(param); use strict; use warnings; use File::Find; use Win32API::File qw(:ALL); use File::stat; #-------------------------------------------------------- # Alle gemappten Laufwerke ausgeben #-------------------------------------------------------- my @drives = getLogicalDrives(); foreach (@drives) { $lauf = $lauf . "$_\n"; }; $gbsum = ''; $mbsum = ''; $mb = ''; $used = ''; $anzahldateien = ''; @arr = ''; $filesize = ''; $start_dir = ''; $qs_srv_adr = ''; #---------------------------------------------------- # Laufwerk mappen #---------------------------------------------------- my $qs_srv_adr = "xxx" . '\\' . "yyy"; my $pwd = "ppp"; my $user = "uuu"; system("net use * /delete /" . "y"); my $netuse = 'net use ' . "y" . ': \\\\' . $qs_srv_adr . ' ' . $pwd . ' /user:' . $user . ' /persistent:no'; system($netuse); $start_dir = "y" . ":/"; my $s = qx(net share); if ($s =~ m/Users/) { print "Share USERS ist belegt"; }; eval { find(\&find_parm, $start_dir); }; if ($@) { # nach eval stehen in $@ stehen Meldungen wenn was fehlschlug # hier Fehlermeldung des eval auswerten }; $anzahldateien = @dir_entries; $gbsum = $mbsum / 1024; $used = (100 * $gbsum) / "y"; sub find_parm { my $akt_file = $File::Find::name; push @dir_entries, $akt_file; my @arr = stat ("$akt_file"); #my @fileProps = stat($akt_file) or die "stat of $akt_file failed!: $!"; #use Data::Dumper; #print ( LOGF "DEBUG###\n", Dumper(\@fileProps), "\n####\n"); $filesize = ''; $filesize = $arr[7]; $mb = ''; $mb = ($filesize / 1024) / 1024; $mbsum = $mbsum + $mb; };