我有两个非常大的文件(以十亿为单位的行),并且行是排序的且唯一的,我想要一种有效的方法将这两个文件合并为一个文件,其中其行是排序的且唯一的。我想合并这两个文件,然后使用
命令sort -u
,但这似乎不是很方便,因为我不会利用这两个文件都排序的事实。
首先这是一个linux相关的问题,所以正确的论坛是stackeExchange
接下来,这取决于您希望如何对行进行排序。
-
如果您希望file1和file2中的行以组合方式排序,那么
sort-u
是可行的。 -
如果你只是想合并已经预先排序的file2, file2,你可以简单地连接它们,例如
cat file1 file2 >file3
-
您可以通过循环遍历每一行并使用任意一种排序算法来实现自定义排序。虽然它与选项(1)类似,但速度比选项(1)慢,所以为什么要这样做呢?