AWK: redirecionar a saída do script do script para outro arquivo com o nome dinâmico

StackOverflow https://stackoverflow.com/questions/302152

  •  08-07-2019
  •  | 
  •  

Pergunta

Eu sei que posso redirecionar a saída de impressão de awk para outro arquivo a partir de um script, como este:

awk '{print $0 >> "anotherfile" }' 2procfile

(eu sei que é exemplo fictício, mas é apenas um exemplo ...)

Mas o que eu preciso é para redirecionar a saída para outro arquivo, que tem um nome dinâmico como este

awk -v MYVAR"somedinamicdata" '{print $0 >> "MYWAR-SomeStaticText" }' 2procfile

E o outpus deve ser redirecionado para somedinamicdata-SomeStaticText.

Eu sei que posso fazê-lo via:

awk '{print $0  }' 2procfile >> "$MYVAR-somedinamicdata"

Mas o problema é que é um script awk maior, e eu tenho que saída para vários arquivos dependendo de certas condições (e este script awk é chamado de outro bash, e passa alguma variável dinâmica através do interruptor -v .. . e filho diante.

É possível afinal?

Agradecemos antecipadamente.

Foi útil?

Solução

i pensar

awk -v MYVAR="somedinamicdata" '{print $0 >> (MYVAR "-SomeStaticText") }' 2procfile

deve fazê-lo. Concatenação de string em awk é apenas colocar um após o outro.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top