我試圖做測試一個Hadoop的工作流映射和減速功能:Unix的排序產生錯誤的輸出
cat data.txt | python mapper.py | sort | python reducer.py
但是從映射器輸出的排序是不正確的。
he the 1
i 1
i dog 1
i like 1
i'm 1
i'm rob 1
i'm the 1
i the 1 ### this should be after "i like 1" ###
lazy 1
我有自己的機器上其他人的測試,他們得到有完全相同的映射功能和命令行執行正確的輸出。因此,我的Unix排序似乎出了問題。
如果這有助於:
echo $TERM
> vt100
什麼嘗試或設置不同,將不勝感激任何建議。謝謝
是你的'data.txt'有史以來創建或在Windows機器上編輯?即使不是,請嘗試「dos2unix data.txt」,然後重新運行。祝你好運。 – shellter
環境指定的區域設置會影響排序順序。 – alvits
您的語言環境會整理'''和'',所以'sort'將它們比較爲平等,並使用下一個字符來打破平局。 –
chepner