Ich habe drei Dateien mit n Zeilen, wie unten angegeben
sample1.txt
------------------------------
Date Time Name
------------------------------
2013/10/12 12:09:09 Krish
2013/10/12 13:12:01 Ramb
2013/10/12 15:28:39 Likha
2013/10/12 15:56:12 Mat
.
.
.
Sample2.txt
------------------------------
Date Time Name
------------------------------
2013/10/12 11:19:21 Jack
2013/10/12 12:11:09 Rob
2013/10/12 15:45:12 Rick
2013/10/12 22:11:10 Phil
.
.
.
Sample3.txt
------------------------------
Date Time Name
------------------------------
2013/10/12 12:09:09 Eric
2013/10/12 13:12:01 Bob
2013/10/12 15:28:39 Mike
2013/10/12 15:56:12 Nick
.
.
.
Ich muss diese drei Dateien in einer einzigen Datei (Master.txt) zusammenführen, indem ich die Header (die ersten drei Zeilen) in Sample2.txt und Sample3.txt wie unten angegeben ausschließe
Gewünschte Ausgabe
$cat Master.txt
------------------------------
Date Time Name
------------------------------
2013/10/12 12:09:09 Krish
2013/10/12 13:12:01 Ramb
2013/10/12 15:28:39 Likha
2013/10/12 15:56:12 Mat
2013/10/12 11:19:21 Jack
2013/10/12 12:11:09 Rob
2013/10/12 15:45:12 Rick
2013/10/12 22:11:10 Phil
2013/10/12 12:09:09 Eric
2013/10/12 13:12:01 Bob
2013/10/12 15:28:39 Mike
2013/10/12 15:56:12 Nick
Hinweis: In AIX-Maschine mit Ksh 88
text-processing
ksh
aix
RAM
quelle
quelle
Antworten:
quelle
tail -n +4
bedeutet, dass unabhängig von der Größe der Datei die obersten 3 Zeilen ausgeschlossen sind. Ich habe es gerade mit einem 10-Zeilen-Fie versucht. Verwechseln Sie die "4" hier nicht mit der Tatsache, dass Ihr Sample 4 Zeilen hat. Das ist im Grunde ein Zufall.head
eine ähnliche Option:-n -X
druckt alle bis auf die letztenX
Zeilen.quelle
${}
Syntaxsed
?${}
, aber "mach{...}
in Zeile 4 bis zum Schluss"; Übereinstimmende Zeilen werden entfernt, jedoch erst, nachdem der erste Header verstrichen ist. Die Verwendung des Schwanzes ist jedoch allgemeiner und robuster.{}
Gruppierung von Befehlen.#!/bin/sed
indem Sie der Dolmetscher sind.