1
2
3
4
5
6
1 /(kx[0-9]{6})/i
2 /(kx[0-9]{5})/i
3 /(kx[0-9]{4})/i
4 /(^00[0-9]{4}\D)/
5 /(\D00[0-9]{4}\D)/
6 /((\D|^)\d{1,6}\D)/
1 2 3 4 5 6 7 8 9 10 11
for my $fname (@files) { if( $fname=~/regex/ ) { verschiebe($fname, $von, $nach); } elsif( $fname=~/regex/ ) { verschiebe($fname, $von, $nach); } #...
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
my @aktionen=( [qr/(kx[0-9]{6})/i, '/wo/es/hin/soll/A/'], [qr/(kx[0-9]{5})/i, '/wo/es/hin/soll/B/'], [qr/(kx[0-9]{4})/i, '/wo/es/hin/soll/C/'], [qr/(^00[0-9]{4}\D)/, '/wo/es/hin/soll/D/'], [qr/(\D00[0-9]{4}\D)/, '/wo/es/hin/soll/E/'], [qr/((\D|^)\d{1,6}\D)/, '/wo/es/hin/soll/F/'], ); my $quelle='/wo/die/dateien/sind/'; my @file_names; # ... for my $fname (@file_names) { for my $paar (@aktionen) { my ($regex,$ziel)=@$paar; if($fname =~ $regex) { verschiebe($fname, $quelle, $ziel); last; } } } # -------------------------------------------------- sub verschiebe { my ($file,$quelle,$ziel)=@_; File::Copy::move($quelle.$file,$ziel.$file); }