java - 基于列将两个文本文件映射为一个的有效方法

标签 java python linux shell

我有两个文本文件:

文件1:

Category ID

C1  A1
C2  A2
C3  A3  
C1  A4
C4  A5

文件2:

Purchase ID

O1  A1
O1  A2
O1  A3
O1  A4
O2  A5
O2  A6
O3  A7
O3  A2

我需要创建一个文件 3:

O1 A1 C1
O1 A2 C2

等等。

文件 1 和文件 2 将非常大。

有人可以推荐一种有效的方法来执行此操作(而不是从文件 1 和文件 2 中逐一搜索),可能是在 python 中。

但其他语言也可以。 excel也不错,能用吗?

任何有关任何类型解决方案的线索都将不胜感激。

最佳答案

在 shell 中使用 join:

join -j 2 -o 2.1 2.2 1.1 File1 File2
  • -j 2 表示“在第二列加入”
  • -o 指定输出中列的顺序,2.1 代表“文件 2,列 1”

关于java - 基于列将两个文本文件映射为一个的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42206650/

相关文章:

java - 如何使用 Jface 对话框验证文本?

python - 将 2 个字典列表压缩为 1

python - 带有 Bokeh 图的 ImportError : No module named _ctypes. Google 应用引擎

linux - 在 Makefile 命令中设置变量

java - JCombobox 下拉可见性问题?

java - org.hibernate.MappingException : An AnnotationConfiguration instance is required

java - Windows 上的 "lo"接口(interface)等效项是什么

python - Django UpdateView 没有表单来更新对象

linux - 是否有用于 Enlightenment 的 KDE 系统托盘小程序?

linux - Unix(BSD Unix, MacOSX) vs Linux登录setuid位区别