2つの大容量ファイル(1つのファイルは699M、もう1つは20GB)を結合しようとしています。両方のファイルには2つの列しかありません。私が使用するコマンドは次のとおりですjoin -1 2 -2 1 -t , -o 1.2,0,2.2 file1 file2
。小さなコマンドで試してみると、file1
コマンドは正しく機能します。$?
終了コードがゼロでないことを確認するために印刷しようとしましたが、そうではありませんでした。
原因を見つけるためにデバッグするにはどうすればよいですか?
Some info:
O.S: RHEL5
Arch: x86_64
答え1
両方のファイルは結合フィールドでソートする必要があり、使用するのと同じ順序でソートする必要がありますjoin
。一般的な問題は、ファイルがたとえばを使用してソートされますが、LC_COLLATE=C
現在の値LC_COLLATE
(現在使用されているjoin
)が異なる値であることde_DE
です。 (LC_COLLATE=C
そしてLC_COLLATE=de_DE
大文字と小文字を比較するときは異なり、スペースを別々に処理します。)