Thread unzip und Sonderzeichen in gepackten Datei-/Verzeichnisnamen (14 answers)
Opened by frankes at 2009-04-29 17:51

frankes
 2009-04-29 17:51
#121024 #121024
User since
2005-04-02
140 Artikel
BenutzerIn

user image
Nicht wirklich ein Perl Problem, aber vielleicht kann mir hier einer weiter helfen.

Mittels eines Formular-Uploads werden gezippte Verzeichnisse auf einen (in diesem Fall) Solaris Web-Server geladen, die dort über ein Perl Script entpackt werden.
Mangels eines passenden Modul auf dem Server greife ich mit system auf unzip zurück um die ZIP Archive zu entpacken:
Code: (dl )
system ('/usr/bin/unzip','ziparchiv','-d','/Zielverzeichnis');


Probleme gab es nun, als ZIP Archive Dateien mit Sonderzeichen (konkret ä,ö,ü) im Datei-/ Verzeichnisnamen beinhalteten.
Die ZIP-Archive werden hier unter Linux mit utf-8 als Systemzeichensatz erstellt. Nach dem entpacken auf dem Server werden Sonderzeichen in Dateinamen falsch codiert (sieht nach verwendeten Systemzeichensatz iso-8859-1 auf dem Server aus).

Wäre ja nicht weiter tragisch, aber leider verschluckt sich der Solaris Server dermaßen an diesen Datei- und Verzeichnisnamen, dass er behauptet, diese würden nicht existieren. Sprich, die Verzeichnisse/Dateien werden mittels FTP-Client angezeigt können aber nicht bearbeitet werden. (Nach langem herumprobieren mit FTP-Client und Perl Scripten lies der Server sich wenigsten dazu überreden, diese 'nicht vorhandenen' Einträge zu löschen.)

Frage:
Suche nach einem Lösungsansatz (oder Lösung :-) ) wie ich erreichen kann, dass die entpackten Datei-/ und Verzeichnisnamen mittels 'unzip' im richtigen Zeichensatz des entpackenden Systems entpackt werden,
oder Sonderzeichen in Verzeichnis-/Dateinamen vor dem Entpacken entschärft/ausgetauscht werden können.
(... um ehrlich zu sein: Einfach eine Lösung, dass der Sch... funktioniert. )

Danke
Last edited: 2009-04-29 17:52:30 +0200 (CEST)

View full thread unzip und Sonderzeichen in gepackten Datei-/Verzeichnisnamen