Thread Files nach bestimmten Schema schreiben
(4 answers)
Opened by Gast at 2008-06-18 14:15
Du arbeitest mit Schleifen, wo keine Schleife notwendig ist. Beispiel:
Warum nicht einfach Code (perl): (dl
)
my @found = glob "files/*.txt"; Was Dein Fehler ist: Du berechnest nur ein einziges Mal die Zufallszahl $random. Dadurch beschreibst Du immer wieder die selbe Datei. Dadurch wird keine neue Datei erstellt und so bleibst Du immer bei genau einer neuen Datei!! Warum verwendest Du so viele globs? Gibt es andere Programme, die die Dateien/Verzeichnisse erstellen können? Wenn dieses Programm das einzige Programm ist, was an den Dateien und Verzeichnissen arbeitet, dann würde ich das so (ungefähr) machen: 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 #!/usr/bin/perl use strict; use warnings; my @files = glob "files/*.txt"; my $counter = 0; my $dir = 1; for my $file ( @files ){ if( $counter++ % 5 == 0 ){ $dir++; } mkdir "suche/$dir" unless -e "suche/$dir"; my $random = int rand 999999; open my $fh, '>', "suche/$dir/$random$file" or die $!; print $fh "DATEI"; close $fh; } OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/) -- Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html Perl-Entwicklung: http://perl-services.de/ |