Ich habe ein Perl-Skript, das ich möchte für den Benutzer in der Lage zu wählen, ob die Ausgabe in Gzip oder Nur-Text-Datei ist. Ich benutze Perl IO::zlib
und die Idee wäre, den Namen der Ausgabedatei zu überprüfen, und wenn es eine .gz
Erweiterung hat, verwenden Sie Gzip, ansonsten drucken Sie einfach im Klartext. Ich verwende einen Befehl wie:perl IO :: zlib print Nur-Text-Datei
my $EXCL = new IO::Zlib;
$EXCL->open($out_file, (substr($out_file, -3) eq '.gz' ? "wb9" : "wT")) || die("ERROR: cannot open EXCL file!") if($out_file);
aber die Ausgabedatei wird immer komprimiert! Mache ich etwas falsch?
Dank,
Ich dachte daran, aber es wäre schöner/einfacher, alles auf einen Befehl zu haben. Wie für die "wT" -Option, dachte ich, Zlib würde die C zlib Bibliothek verwenden und in ihrem Handbuch heißt es: Der Modus Parameter ist wie in fopen ("rb" oder "wb") kann aber auch eine Komprimierung enthalten level ("wb9") oder eine Strategie [...] 'T' fordert transparentes Schreiben oder Anhängen ohne Komprimierung an und verwendet nicht das gzip-Format. – FGV
IO :: ZLib-> neu erstellt komprimierte Dateien. Es ist nicht sinnvoll, den Inhalt ohne Grund durch ein zusätzliches Modul zu leiten, auch wenn es reinen Text ausgeben könnte. – Sebastian