Am Donnerstag, 17. Juli 2003 21:29 schrieb Benny P.:
> Hi Liste,
>
> folgendes Problem:
>
> Ich habe Verzeichniss mit Unterverzeichnissen, in denen
> Dateien sind, die alle einzeln als bz2 gepackt sind.
>
> Nun w�rde ich die gerne alle auf einmal entpacken,
> allerdings bekomme ich bei meiner Methode ein paar Probleme
> mit leerzeichen und .* Dateien.
>
> for i in $(find . -name "*.bz2"); do bunzip2 "$i"; done
>
> Wenn ich einen Ordner der Leerzeichen im Namen hat habe,
> dann wei�t for i zuerst den 1. Teil des Namens zu un dann
> den 2. was bunzip2 nat�rlich garnicht gef�llt. Wie kann ich
> das �ndern?
>
> Wie muss ich die wildcart �ndern, dass ich auch .*.bz2
> Dateien mit einbeziehe?

Tut er auch so (bei mir zumindest).
find . -name *.bz2 | perl -ne '`bunzip2 $_`'
wenn Du die Dateien in dem jeweiligen Verzeichnis entpacken willst, 
solltest Du:
find . -name *.bz2 | perl -ne 'chdir(`dirname $_`);`bunzip2 $_`'
verwenden.

Max

----------------------------------------------------------------------------
PUG - Penguin User Group Wiesbaden - http://www.pug.org

Antwort per Email an