Muito obrigado Paulo mas o Cygwin é ruim de serviço, nada funcionou.
--
Cesar
On 10/28/2020 11:22 AM, Paulo wrote:
> ops não usei um número com milhar
>
> octal
> awk 'BEGIN {printf "%\047.2f\n", 13434324.24}'
> 13.434.324,24
>
> hexa
> awk 'BEGIN {printf "%\x27.2f\n", 13434324.24}'
> 13.434.324,24
>
> awk --posix 'BEGIN {printf "%\x27.2f\n", 13434324.24}'
> ccfdd427.2f
>
>
> aspa simples escapada
> awk 'BEGIN {printf "%'\''.2f\n", 13434324.24}'
> 13.434.324,24
>
>
> On 28/10/2020 11:15, Paulo wrote:
>> Olá Cesar, isso pode ser incompatibilidade do Cygwin?
>> O awk reconhece o octal
>> awk 'BEGIN {printf "%\047f\n", 10/3}'
>> 3,333333
>>
>> Hexadecimal só o GNU awk reconhece acho
>> awk 'BEGIN {printf "%\x27f\n", 10/3}'
>> 3,333333
>>
>> awk --posix 'BEGIN {printf "%\x27f\n", 10/3}'
>> 327f
>>
>> Veja se o Cygwin reconhece assim
>> awk 'BEGIN {printf "%'\''f\n", 10/3}'
>> 3,333333
>> fecha as aspas simples do awk depois imprime uma aspa simples
>> (escapada \' ou entre aspas duplas "'")
>> depois abre as aspas simples do awk novamente.
>> Abraços Paulo
>>
>> On 28/10/2020 09:05, PY2YP wrote:
>>> Bom dia senhores,
>>>
>>> Estou tentando formatar uma saída com separadores de milhar. Os
>>> comandos abaixo funcionam muito bem:
>>>
>>> LC_NUMERIC=en_US printf "%'.2f\n" 13434324.24 retornando
>>> 13,434,324.24 em seguida enviando:
>>> sed -i 's/\./\,/g' filename
>>> retorna:
>>> 13.434.324,24
>>>
>>> Até aí não há qualquer dúvida. O problema é que preciso dessa
>>> formatação nesta associação de comandos:
>>>
>>> grep "CRA" b4.csv | awk -F";" '{x+=$3}END{printf "Total de CRA"
>>> "%51.2f\n", x}' >> total.csv
>>>
>>> Aonde o arquivo b4.csv tem os valores no formato 13434324.24.
>>>
>>> Então o comando para formatação ficaria assim:
>>> grep "CRA" b4.csv | awk -F";" '{x+=$3}END{printf "Total de CRA"
>>> "%'51.2f\n", x}' >> total.csv
>>> Trazendo o foco para o gerador do problema: "%'51.2f\n" o single
>>> quote está conflitando com o single quote de abertura da chave do
>>> awk: '{...
>>> Tentei usar "%\047... mas não funcionou. Uso o CYGWIN64.
>>> Alguma dica? Agradeço antecipadamente,
>>>
>
> _______________________________________________
> Lista brasileira de usuários de shell script
> Endereço de e-mail da lista:
shell-script-pt@nongnu.org> Para se inscrever ou desinscrever acesse:
>
https://lists.nongnu.org/mailman/listinfo/shell-script-pt> Para ver os arquivos da lista (mensagens anteriores) e pesquisar nelas,
> acesse
https://lists.nongnu.org/archive/html/shell-script-pt/>
> NOTA: A lista anterior, no Yahoo Groups, foi *desativada*. Por favor
> utilize somente esta.