Eu tenho três arquivos com n número de linhas, como indicado abaixo
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
.
.
.
Preciso mesclar esses três arquivos em um único arquivo (Master.txt) excluindo os cabeçalhos (3 primeiras linhas) em Sample2.txt e Sample3.txt, conforme indicado abaixo
Saída desejada
$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
Nota: Na máquina AIX com Ksh 88
text-processing
ksh
aix
RAM
fonte
fonte
Respostas:
fonte
tail -n +4
significa que, independentemente do tamanho do arquivo, as 3 principais linhas são excluídas. Eu apenas tentei com 10 linhas fie. Não misture o "4" aqui com o fato de que sua amostra possui 4 linhas. Isso é basicamente uma coincidência.head
tem uma opção semelhante:-n -X
imprimirá todas, exceto as últimasX
linhas.fonte
${}
sintaxe fazsed
?${}
, mas "faça{...}
nas linhas 4 para durar"; remove as linhas correspondentes, mas somente após a passagem do primeiro cabeçalho. O uso da cauda é mais geral e mais robusto.{}
é um agrupamento de comandos.#!/bin/sed
como intérprete.