use awk com entrada de uma variável

1

eu preciso buscar n + 9a linha a partir da ocorrência de uma palavra específica que é armazenada na variável i de um arquivo LIST.txt

Abaixo está o comando

Used_pages='awk '/${i}/{nr[NR+9]}; NR in nr'  LIST.txt'

funciona quando eu faço um teste no arquivo, substituindo a variável $ i por um dos valores como

 awk '/APPLE/{nr[NR+9]}; NR in nr'  LIST.txt

Por favor me ajude a descobrir como usar o mesmo comando com a variável.

Obrigado

    
por user1643087 05.12.2015 / 14:02

1 resposta

2

awk tem o parâmetro -v para definir variáveis. Para definir a variável $i em awk , você diria awk -v i=$i e, em seguida, na instrução awk , simplesmente referencie a variável como i em vez de $i .

Eu não testei o seguinte, mas tente isto:

used_pages="$(awk -v i=$i '/i/{nr[NR+9]}; NR in nr' LIST.txt)"
    
por 05.12.2015 / 15:48

Tags