012
25.08.2003, 08:02 Uhr
virtual
Sexiest Bit alive (Operator)
|
Halo, nochmal:
Der Komprimpierte Input von bzip2 kann nur aus zwei Quellen kommen: 1. Man gibt die Komprimierten Dateien direkt über Kommandozeile an. (beefies lösung) 2. Man piped die komprimierte Datei als Eingabe direkt an bzip2.
Was Du probierst, ist keins von Beiden: Du gibst Die Dateien nicht in der Kommandozeile an, folglich geht bzip2 davon aus, daß jetzt die komprimierten Daten über die pipe geliefert werden. Du lieferst aber nur eine Unkromprimierte liste, die Dir ls/grep geliefert hat.
Sollte es nicht so wichtig sein, daß auch die Unterzeichnisse unkomprimiert werden, ist beefies Variante die Optimalste; mit Unterverzeichnissen die von mir.
Will man unbedingt ls und grep verwenden, so würde das folgende am ehesten Deiner intention entsprechen:
C++: |
bzip2 -d `ls | grep .bz2`
|
Wobei es hier keinen vernünftigen grund gibt, dies beefies Version vorzuziehen. Das wäre auf jedenfall die Variante "Benutze ls, grep und Kommandozeilen Parameter von bzip2" Die Variante "Benutze ls, grep und stdin" geht so:
C++: |
ls | grep .bz2 | while read D do bzip2 -d <$D >${D}.uncompressed done
|
Wobei die Ausgabedateien dann eben mit dem Suffix ".uncompressed" versehen werden. -- Gruß, virtual Quote of the Month Ich eß' nur was ein Gesicht hat (Creme 21) Dieser Post wurde am 25.08.2003 um 08:07 Uhr von virtual editiert. |