[bglug] dvd-slideshow: printf da errore un computer si ed uno no

Gian Paolo Ghilardi gpghilardi@gmail.com
Gio 29 Maggio 2008 23:03:17 CEST


>
>
>>
>>> 2) facendo
>>> # export LANG="en_US.UTF-8"
>>> all'inizio di ogni singolo script, o nel profile dell'utente.
>>
>> Nix, non funziona :(
>
>
> Bhe' piu' o meno all'inizio dello script c'e' questo:
>
> LANG=C
>
> quindi direi che ti riscrive il contenuto della export che ti ho  
> suggerito.
> Inoltre mettere LANG=C penso che iteragisca con altre variabili.
> Naturalmente dipende dove hai messo la export. Riprova.
>

Uhm... Mi sa che hai ragione sulla parte relativa ai separatori/lingua  
(tralasciavo di aver impostato l'italiano)...

Wintermute:~ jp80$ x1=1234,5678
Wintermute:~ jp80$ x1_dec=`printf %3.3f "$x1" | awk -F. '{print  
"0."$2}'`;
Wintermute:~ jp80$ echo $x1_dec
0.

Wintermute:~ jp80$ x1=1234.5678
Wintermute:~ jp80$ x1_dec=`printf %3.3f "$x1" | awk -F. '{print  
"0."$2}'`;
-bash: printf: 1234.5678: invalid number


Perņ se si mette il separatore di decimale di sistema/profilo (virgola  
nel mio caso) e si cambia il carattere di "field" di AWK funziona. :P

Wintermute:~ jp80$ x1=1234,5678
Wintermute:~ jp80$ x1_dec=`printf %3.3f "$x1" | awk -F, '{print  
"0."$2}'`;
Wintermute:~ jp80$ echo $x1_dec
0.568

Probabilmente su una macchina con layout eng (punto come separatore di  
decimale) tutto va bene per quello la differenza fra le due macchine. :P

Cedo. ^^

Scusate disturbo.

Ciao.

JP


Maggiori informazioni sulla lista bglug