Thread Umlaute in Dateinamen (4 answers)
Opened by murks86 at 2014-09-15 14:31

Gast murks86
 2014-09-15 14:31
#177272 #177272
Hallo,

ich habe mir ein kleines Skript geschrieben, welches die ersten drei Buchstaben eines Dateinamens analysiert und anschließend in den passenden Ordner (der die drei gleichen Buchstaben trägt) einsortiert. Gibt es keinen passenden Ordner, wird die Datei in den Ordner lostandfound verschoben. Das funktioniert soweit auch recht gut, bis zu dem Punkt, an dem die Dateinamen Umlaute enthalten. In diesem Fall werden die entsprechenden Dateien trotz bestehendem Ordner mit entsprechendem Namen in lostandfound geschoben.

Die pdf-Dateien werden unter Windows7 mittels Adobe PDF-Printer erzeugt. Als Perl Version läuft: ActivePerl 5.18.2.1801

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
use File::Copy;

my $working = "C:/Spektrenlager/PDFOutput/";
my $target = "C:/Spektrenlager/PDFOutput/sortiert/";
my $unknown = "lostandfound/";

chdir $working;
my @Dateien = glob("*.pdf");
foreach (@Dateien){
print $_;
if (-f $_) {
$_ =~ /(\w{3})\w*/;
if ((-e $target.$1) && (-d $target.$1) ){
print "Verschiebe $_ nach $_,$target.$1\n";
move ($_,$target.$1."/".$_);
}
else {
move ($_, $target.$unknown.$_)
}
}
}


Nachdem ich leider nicht so den übermäßigen Plan davon habe, hoffe ich hier ein wenig Hilfe zu finden... Eventuell lässt sich das Problem ja durch wenige Änderungen beheben. Hat es unter Umständen etwas mit den Zeichensätzen zu tun?
Last edited: 2014-09-15 14:35:59 +0200 (CEST)

View full thread Umlaute in Dateinamen