Am Samstag, 23. Oktober 2004 15:42 schrieb Philipp Meier: > On Sat, Oct 23, 2004 at 08:52:56AM +0200, Mario Duve wrote: > > Hallo, > > > > ich suche ein Script oder einzeiler der in allen Datein > > inerhalb eines Verzeichniss und deren Unterv. die erste > > Zeile löscht. > > find verzeichnis -type f -print0 | xargs -0 perl -i -ne 'print if $.>1' > > Zunächst sucht find in "verzeichnis" nach Dateien (-type f) und gibt > diese durch Zeichen 0 getrennt (-print0) aus. Funktioniert als auch bei > Leerzeichen in Dateinamen etc. Xargs liest liest die Dateienamen ein, > beachtet den Trenner (-0) und ruft den nachfolgenden perl einzeiler mit > den Dateinamen als Parameter auf. Perl wiederum bearbeitet die Datei an > Ort und Stelle (-i), optional kann man ein Backup-Suffix angeben, z.B. > -i.bak. Dann liest perl jede Zeile der Datei ein (-n) und für das > folgende Script aus (-e): Gib die Zeile aus falls die Zeilennummer ($.) > größer 1 ist.
Könnte man da nicht auch noch ruby und Python mit einbinden? cd <dir>; for datei in * ; do tail +2 "$datei" > "$datei.neu"; done Geht alles mit Shell-Mitteln. Kann man auch genau so gut mit find verbinden. Und immer fein Quoten (gell, David ;-). -- Gruß MaxX Hinweis: PMs an diese Adresse werden automatisch vernichtet (Filter nach /dev/null).