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.

-billy.

-- 
Philipp Meier - [EMAIL PROTECTED]
.signature: No such file or directory

Attachment: signature.asc
Description: Digital signature

Antwort per Email an