Zeilen aus mehreren Dateien in eine Datei ausgeben

Datum: 2004-09-16
Quelle: suse-linux

Worum ging es?

Aus einer Reihe von Dateien solen die ersten 15 Zeilen ausgelesen und - mit vorangestelltem Dateinamen - in eine Ausgabedatei geschrieben werden.

Code
for i in *; do
  head -n 15 $i | while read l; do
    echo "$i: $l" >>file.out
  done
done
Beschreibung

Die äußere Schleife findet alle Dateien, der Dateiname ist in der Variablen $i enthalten. Die innere Schleife holt zuerst die ersten 15 Zeilen aus dieser Datei und hängt sie dann im Format "Dateiname Zeile" an die Ausgabedatei an.