Thread Funktionen für Dateihandling gesucht (21 answers)
Opened by kami at 2010-03-28 13:06

Gast wer
 2010-03-30 20:10
#135494 #135494
Mein Code kann so wie ich ihn gepostet habe nicht funktionieren in Zeile 13 würde er mit einer Fehlermeldung abbrechen! Denn den Befehl "entpackt" gibt es nicht " alleine leitet einen String ein, was bedeutet alles danach gehört zu dem String und damit sind die Blöcke nicht geschlossen. Weiterhin würde "strict" warnen da neue Variablen nicht mit "my" definiert wurden.

Ich mußte mir den "Archive::Rar" Code anschauen um dahinter zu kommen was los ist.
Das Problem ist das "Archive::Rar" den absoluten Pfad damit testet ob ein "/"(Unix) oder "[a-z]"(Windows) am Anfang steht. Wenn du Anführungszeichen darum setzt, des für "Archive::Rar" nicht mehr absolut. Das Modul ist schlecht Programmiert. Hätte er das Quoten in der Befehlszeile selber übernommen gäbe es diese Problem nicht.

Zwei Möglichkeiten der Lösung:
Code (perl): (dl )
1
2
$source_path = File::Spec->abs2rel( $source_path ) ;
$source_path=qq("$source_path");
Ist aber unter Windows problematisch, wenn auf ein anderes Laufwerk gewechselt wird.
oder:
Code (perl): (dl )
1
2
3
my ($volume,$directories,$file) = File::Spec->splitpath( $path );
$directories=File::Spec->catdir(map{qq("$_")}File::Spec->splitdir( $directories ));
$source_path=File::Spec->catpath( $volume, $directories, qq("$file"));

könnte auch Problematisch sein, da ich nicht genau weiß wie File::Spec damit umgeht.

View full thread Funktionen für Dateihandling gesucht