Adicione uma string à lista usando o AWK ou o SED?

2

Oi eu quero ser capaz de editar a lista de nomes como este usando o AWK ou SED.

Exemplo de arquivo de lista de entrada:

john
paul
rose
lily

Saída desejada:

I am john of earth;
I am paul of earth;
I am rose of earth;
I am lily of earth;

Eu também quero os pontos e vírgulas no final. Eu não quero usar shell scripts de loops for.

    
por ayrton_senna 16.05.2015 / 00:03

2 respostas

3

Usando sed :

$ sed 's/.*/I am & of earth;/' file.txt 
I am john of earth;
I am paul of earth;
I am rose of earth;
I am lily of earth;
    
por 16.05.2015 / 00:07
3

Com awk , você pode usar print :

awk '{ print "I am", $1, "of earth;" }' list

ou printf :

awk '{ printf("I am %s of earth;\n", $1); }' list
    
por 16.05.2015 / 00:08

Tags