shell-script-pt
[Top][All Lists]
Advanced

[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:34:37 -0300
User-agent: Thunderbird 2.0.0.6 (X11/20071022)

Juntando a minha rsposta com a do Flavio junior dá isso.

awk -v A=1 -v B=2 'BEGIN {print sprintf("%.1f", A/B)}'

saída do comando: 0.5

Falow!

Tiago Barcellos Peczenyj escreveu:
> 
> 
> Tenta assim
> 
> $ awk -v a=${var} '{ funcao(a) }'
> 
> mas o bash tb tem printf...
> 
> On 1/2/08, Cristiano Ferrari <address@hidden
> <mailto:boxferrari%40gmail.com>> wrote:
>> 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 ) }'
>> awk: fatal: tentativa de divisão por zero
>>
>>
>> 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
>>
>>
> 
> -- 
> Tiago B Peczenyj
> Linux User #405772
> 
> http://peczenyj.blogspot.com/ <http://peczenyj.blogspot.com/>
> "what does not kill us makes us stronger"
> 
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]