Am Mittwoch, 27. Oktober 2004 02:53 schrieb Sven Mueller:
> Andreas Pakulat [u] wrote on 24/10/2004 17:58:
> > On 24.Oct 2004 - 15:28:01, Matthias Houdek wrote:
> >>>Die Variante mit find und perl wurde ausfuehrlichst dokumentiert, da
> >>
> >>... und funktioniert offensichtlich nicht.
> >
> > ?? Wieso funktioniert sie nicht? Ich habs nicht getestet, aber im
> > Prinzip sollte es doch wohl...
>
> [EMAIL PROTECTED] /tmp # cat test
> 2
> 3
> 4
> [EMAIL PROTECTED] /tmp # perl -i -ne 'print if $.>1' test
> [EMAIL PROTECTED] /tmp # cat test
> 2
> 3
> 4
>
> Hmm, scheint nicht zu funktionieren. "sed" tut aber was gewollt ist:
>
> [EMAIL PROTECTED] /tmp # cat test
> 2
> 3
> 4
> [EMAIL PROTECTED] /tmp # sed -i '1d' test
> [EMAIL PROTECTED] /tmp # cat test
> 3
> 4
>
> Also:
>
> find <directory> -type f -print0 | xargs -0 sed -i '1d'
>
> Mit '2d' w�rde man die zweite Zeile l�schen. Mit '2,4d' die Zeilen 2-4.
> '/^$/d' w�rde alle leeren Zeilen einer Datei l�schen, '/^[ \t]*$/'
> w�rde Zeilen l�schen, die nur Leerzeichen oder Tabs enthalten (das \t
> auf der Shell als CTRL+V,TAB eingeben).
>
> Find und xargs wurde ja schon ausf�hrlich erkl�rt, darum spare ich mir
> das hier. Das "-i" weist "sed" an, die Dateien 'in place' zu
> bearbeiten.

Ja, wobei sed nat�rlich ganz sch�n oversized ist (bei deutlich vielen 
Dateien k�nnte das sp�rbar werden). Vorteil ist nat�rlich "-i" - daran 
hab ich nicht gedacht. Guter Tipp.

-- 
Gru�
  MaxX
Hinweis: PMs an diese Adresse werden automatisch vernichtet (Filter 
nach /dev/null).

Antwort per Email an