[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Uso de variáveis no awk
From: |
Henrique |
Subject: |
Re: [shell-script] Uso de variáveis no awk |
Date: |
Wed, 02 Jan 2008 10:26:19 -0300 |
User-agent: |
Thunderbird 2.0.0.6 (X11/20071022) |
Creio que nao está funcionando , pois as variáveis tem que estar dentro
do AWK. Acho que o AWK cria um novo shell próprio para poder executar.
Sendo assim as variáveis vão com valor nulo, na conta ficando como ZERO,
e por isso dando este erro:
awk: fatal: tentativa de divisão por zero
Tente atribuir um valor às variáveis dentro do AWK.
Boa sorte!
Cristiano Ferrari escreveu:
>
>
> Salve lista, feliz ano novo!
>
> Colegas, tenho dúvidas à respeito do uso de variáveis com o awk em um
> script.
>
> Por exemplo, eu gostaria de fazer uma conta usando 2 variáveis e
> formatar a saída com a função sprintf(). Supondo que eu não usasse
> variáveis, eu faria assim:
>
> awk 'BEGIN { print sprintf("%.8f", 1/3 ) }'
>
> Entretanto, preciso usar as variáveis A e B, ao invés de 1 e 3, mas se
> eu usar aspas simples para passar o código ao awk, o bash não
> interpreta as variáveis:
>
> $ awk 'BEGIN { print sprintf("%.8f", $A/$B ) }'
> ccc
>
> Se eu usar aspas duplas, a interpretação das várias é correta, mas o
> parâmetro "%.8f" é passado intepretado também:
>
> $ awk "BEGIN { print sprintf("%.8f", $A/$B ) }"
> awk: BEGIN { print sprintf(%.8f, 1/3 ) }
> awk: ^ syntax error
> awk: erro fatal: erro interno
> Abortado
>
> Podem me ajudar a resolver isso?
>
> Abraço
>
> Cristiano Ferrari
>
>