У меня есть три файла с числом строк, как указано ниже
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
.
.
.
Мне нужно объединить эти три файла в один файл (Master.txt), исключив заголовки (первые 3 строки) в Sample2.txt и Sample3.txt, как указано ниже
Желаемый вывод
$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
Примечание: в машине AIX с Ksh 88
text-processing
ksh
aix
Баран
источник
источник
Ответы:
источник
tail -n +4
означает, что независимо от размера файла верхние 3 строки исключаются. Я только что попробовал это с 10 линиями тьфу. Не путайте «4» с тем фактом, что в вашем образце 4 строки. Это в основном совпадение.head
имеет аналогичную опцию:-n -X
будет печатать все, кроме последнихX
строк.источник
${}
синтаксисsed
?${}
, но "делайте{...}
строки 4 до конца"; удаляет совпадающие строки, но только после того, как прошел первый заголовок. Использование хвоста является более общим и более надежным.{}
это группировка команд.#!/bin/sed
будучи переводчиком.