JOIN 命令不返回结果

JOIN 命令不返回结果

我正在尝试加入 2 个大文件(1 个文件为 699M,另一个文件为 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在比较大小写字母时有所不同,并且它们对空格的处理也不同。)

相关内容