e-05を0.0000に変換する方法

e-05を0.0000に変換する方法

curl + jqを介してHTMLを解析しようとすると、0.0000123が表示される場所が表示されます(例:1.23e-05)。どのように変換できますか?またはそれが難しい場合は、sedまたはawk代替品を作成してください。

答え1

awkを使用すると、次のようにできます。

$ echo 123.4567E-05 | awk '{printf "%5.8f\n", $1}'
0.00123457

%x.yf は表示する出力形式を決定します。

それからあなたはあなたのcurl ......pattern....| awk '{printf .........}'

答え2

ほとんどのprintf実装は変換を実行できます。

printf '%5.4f' 1e-5==>0.0000
printf '%7.4f' 1.23e2==>123.0000
printf '%7.5f' 1.2324558e-2==>0.01232

$ echo 12.34567E-3 | awk '{printf "%5.10f\n", $1}'
0.0123456700

$ echo "123.56e-2" | perl -ne 'printf( "%03.7f\n", $_)'
1.2356000

$ cat php01.php
<?php
$number = 123.45678e1;
printf("%10.3f\n",$number);
?>
$ php php01.php 
  1234.568

関連情報