Simule o comando sed read com o awk

1

Eu quero estimular o uso de sed :

sed  '3r awk.scr' awk.script

com awk.scr :

a
b
c 
d 
e 
f

e awk.script como:

hello there is
hello i'am there is
hello sdfdf
dfdfdf aads
23213 3 434

Usando awk aqui:

awk 'BEGIN {while((getline gf < "awk.script") > 0) {print gf; if(++i > 2) break;} {while((getline bf < "awk.scr")> 0 ) { print bf}}}'

Mas é muito complexo, há uma saída fácil.

Saída desejada:

hello there is
hello i'am there is
hello sdfdf
a
b
c
d
e
f
    
por asad 30.12.2015 / 11:01

1 resposta

3

Uma maneira mais fácil pode ser:

awk 'FNR == 3 {print;while(getline < "awk.scr") print; next};1' awk.script

ou:

awk 'FNR == 4 {while(getline < "awk.scr") print};1' awk.script

Com essa abordagem, você só precisa se preocupar com awk.scr , awk processará awk.script para você.

    
por 30.12.2015 / 11:27