Leser: 2
|< 1 2 3 >| | 27 Einträge, 3 Seiten |
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
34
35
36
37
38
39
40
41
42
43
44
45
46
sub NoSlashAtEnd
{
my $buffer = shift;
$buffer =~ s!/$!!;
return $buffer;
}
sub GetFolderInfo
{
my ($folder, $rekursivlevel) = @_;
$rekursivlevel = -1 unless defined $rekursivlevel;
return (0, 0, 0) unless -d $folder;
$folder = &NoSlashAtEnd($folder);
my ($size, $numfiles, $numdir) = (0, 0, 0);
my $dir;
if(opendir($dir, $folder))
{
while(my $entry = defined readdir($dir))
{
next if $entry .= m!^\.\.?$!;
my $path = "$folder/$path";
if(-f $path)
{
$size += -s $path;
$numfiles++;
}
elsif(-d $path and $rekursivlevel != 0)
{
my ($reksize, $reknumfiles, $reknumdir) = &GetFolderInfo($path, $rekursivlevel-1);
$size += $reksize;
$numfiles += $reknumfiles;
$numdir += $reknumdir + 1;
}
}
closedir $dir;
}
return ($size, $numfiles, $numdir);
}
QuoteAber aber warum nimmst du nicht File::Find (das ist doch ueberall vertreten)?
1 2 3 4 5 6 7 8 9 10
#!/usr/bin/perl use warnings; $size = 0; $temp = ""; $path_to_dir="/home/www"; $size,$temp = split(, `du -ks $path_to_dir`); print $size;
|< 1 2 3 >| | 27 Einträge, 3 Seiten |