bash ターミナルで次のコマンドを検討してください。
echo 0.00027849383762390271 | awk '{print sprintf("%.20f",$1)}'
2 台のマシンに接続しています。
1 つ目は、GNU Bash バージョン 4.15 と GNU Awk バージョン 3.1.7 です。上記のコマンドは、期待されるものを返します:0.00027849383762390268(ただし、最後の2桁は最初の番号とは異なります)
2 台目のマシンには、GNU Bash バージョン 3.2.39 と GNU Awk バージョン 3.1.5 が搭載されています。上記のコマンドは、0,00000000000000000000 (カンマの後に 20 個のゼロ) を返します。「.」の代わりに「,」に注意してください。.
2 台目のマシンが最初のマシンとは異なる動作をするのはなぜですか? また、最初のマシンのように動作させるにはどうすればよいですか?