unix join不工作:文件没有排序(它们是!!!)

时间:2014-06-20 22:24:38

标签: sorting unix join

我一直在尝试进行unix连接,但似乎没有用。我有两个文件,它们都是排序的,两者的第一列都是数字。

问题似乎在于执行连接的顺序(以及它如何读取属性)。

错误输出为:

join: tags.csv:34: is not sorted: 109,1219,Alfred,Hitchcock,1165555288
join: users.csv:800: is not sorted: 10,F,35,1,95370,1009,5,979168267

因此,我在tags文件的第34行中有一个109值,在第800行的users文件中有一个10值。因此,它似乎是比较10对109(如修剪),但它给出了一个错误,说它没有排序。

我尝试在连接执行中更改文件的顺序,但没有运气。

有没有人经历过这样的事情?

1 个答案:

答案 0 :(得分:0)

我会提到另一个答案,我找到了同样的问题:

“如果您确定已正确排序输入文件并且它们的行可以配对,则可以通过运行join --nocheck-order file1.txt file2.txt来避免上述错误”

这对我有用。无论如何,还有另一个答案。

感谢@Yoav Weiss https://unix.stackexchange.com/questions/12942/join-file-2-not-in-sorted-order