Thread Anzahl von Subordnern in Hauptordner beschränken (13 answers)
Opened by donlenardo at 2012-07-02 15:56

topeg
 2012-07-03 15:31
#159542 #159542
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Außerdem solltest du das etwas anders nutzen:
Code (perl): (dl )
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
                #...
                # im code:
                unless( shorten_dir($dirResults, $maxRes) )
                {
                  print "\n\nERROR, Probleme beim löschen von Ordnern in $dirResults\n";
                }
                #...

# Pack die Funktionen hinten an den Code
# sie brauchen nicht an der Stelle zu stehen, an denen du sie aufrufst.

##################################################################################
# Funktionen #####################################################################
##################################################################################

sub shorten_dir
{
  my $dir = shift;
  my $max = shift;
  return 0 unless( opendir(my $dh, $dir) );
  my @dirs = sort{$b->[1] <=> $a->[1]} map {[$_, -M $_]} grep {-d $_} map {"$dir/$_"} readdir($dh);
  closedir($dh);
  my $ok=1;
  while(@dirs>$max)
  {
    $ok=0 unless( remove_dir(shift(@dirs)->[0]) );
  }
  return $ok;
}

sub remove_dir
{
  my $dirDel=shift;
  return 1 unless(-d $dirDel);
  # brauchst du nicht,
  # es ist schon ein vollständiger Pfad
  # chdir(".$dirResults");
  return 0 unless( system ('rm', '-rf', $dirDel)==0 );
  print "\n\nOK, Verzeichnis ".$dirDel." geloescht!\n";
  return 1;
}


Edit: Kommentarzeichen vergessen.
Last edited: 2012-07-03 15:34:37 +0200 (CEST)

View full thread Anzahl von Subordnern in Hauptordner beschränken