Wenn Sie unter Linux cat * eingeben, erhalten Sie ungefähr Folgendes:
Zeile1 von Datei1
Zeile2 von Datei1 Zeile1
von Datei2
Zeile1 von Datei3
Zeile2 von Datei3
Zeile3 von Datei3
Ich möchte ein Trennzeichen zwischen Dateien anzeigen. Etwas wie folgt aus :
line1 von file1
line2 von file1
XXXXXXXXXXXX
line1 von file2
XXXXXXXXXXXX
line1 von file3
line2 von file3
line3 von file3
Ist das mit einem Einzeiler, der auswendig leicht zu tippen ist, problemlos möglich?
tail -n X
zeigt die letzten X Zeilen.tail -n +X
beginnt bei Zeile X und beginnt bei 1 , dh es werden alle außer den ersten (X-1) Zeilen angezeigt.cd /to/your/directory; for each in *; do cat $each; echo "XXXXXXXXXXX"; done
quelle
Oder
Oder
Verwenden Sie nur Bash (nein
cat
):Bearbeiten:
In AWK 4:
In dieser Antwort können Sie ein beliebiges Trennzeichen wie in den anderen Beispielen verwenden. Wenn Sie das Trennzeichen am Ende jeder Datei verwenden möchten, ändern Sie es
BEGINFILE
inENDFILE
. Es kann immer noch am Anfang des Skripts angezeigt werden, da es eine Bedingung ist (anstatt eine Ausführungsreihenfolge zu implizieren).quelle