cabeçalho em todas as páginas de cada pessoa

1

Meu file.txt :

Adam , 111
Adam ,222
Adam ,333
Tom ,111
Tom , 222
Tom, 333
Dick, 111
Dick, 222
Dick ,333

A saída esperada é:

My list
-----------------------
    List for Adam
-----------------------
    Adam 111
    Adam 222
    Adam 333
    End of list for Adam
.    My list
.   -------------------
    List for Tom
.   ------------------
    Tom 111
    Tom 222
    Tom 333
    End of list for Tom
.    My list
    ----------------------
    List. For Dick
.   ----------------------
    Dick 111
    Dick 222
    Dick 333
    End of list for Dick

Eu estava olhando para o meu arquivo derramado pelo nome de pessoas em uma coluna específica e adicionar rodapé de cabeçalho por usuing:

awk 'BEGIN {pttern } {action} END{pater}' myfile.txt

Obrigado pela resposta e desculpe pela edição

    
por kalpesh 04.07.2018 / 17:48

1 resposta

3

Awk abordagem:

awk 'BEGIN{ head = "List for"; tail = "End for list for" }
     !a[$1]++ {
         if (NR > 1) print tail, name ORS;
         print head, $1;
         name = $1
     }
     END{ print tail, name }1' file

A saída:

List for Adam
Adam 111
Adam 222
Adam 333
End for list for Adam

List for Tom
Tom 111
Tom 222
Tom 333
End for list for Tom

List for Dick
Dick 111
Dick 222
Dick 333
End for list for Dick
    
por 04.07.2018 / 18:01