3
出於某種原因,在我的機器上似乎破壞了負浮點數與awk
和sort
的比較。這似乎是-0.1 < -0.2
。使用awk或排序不正確排序負浮點數
當我嘗試使用sort -n test.dat
0.2
-0.1
-0.2
0.1
0
排序,我得到的
-0.1
-0.2
0
0.1
0.2
代替
-0.2
-0.1
0
0.1
0.2
我出什麼問題了?
出於某種原因,在我的機器上似乎破壞了負浮點數與awk
和sort
的比較。這似乎是-0.1 < -0.2
。使用awk或排序不正確排序負浮點數
當我嘗試使用sort -n test.dat
0.2
-0.1
-0.2
0.1
0
排序,我得到的
-0.1
-0.2
0
0.1
0.2
代替
-0.2
-0.1
0
0.1
0.2
我出什麼問題了?
答案:你是法國人!
在法語中,小數點是逗號(,
)而不是點(.
)。您需要用逗號替換點或更改您的語言環境。
嘗試LC_NUMERIC=us_EN.UTF-8 sort -n test.dat
,你應該得到預期的結果。
對於您的信息,LC_NUMERIC
是一個環境變量,其中包含用於格式化非貨幣數字的區域設置。
+1:哈哈,非常好的第一句話^^(我也是法語的^^) –