awk - Atribui resultado variável da função do sistema

0

Gostaria de atribuir um resultado variável da função do sistema:

awk 'BEGIN{x=system("cut -d \" \" -f 1 ol");print x}'

Insira "ol":

1

Resultado:

1
0
    
por diego9403 01.09.2015 / 09:28

1 resposta

1

Eu não acho que haja uma maneira fácil e direta de fazer isso. Você tem que recorrer a arquivos temporários ou a este método (conteúdo de 'input': "valor in ol"):

 awk -v cut_result=$( awk 'BEGIN{system("cut -d \" \" -f 1 ol")}' ) '{print $0, cut_result}' input

resultado: "valor em ol 1"

Assim, a saída do awk é transformada em uma variável que é alimentada em outra invocação do awk como a variável "cut_result".

    
por 27.12.2015 / 20:50

Tags