我想输出已排序的file1中的所有字段,这些字段可以通过file1的field1和file2的field2连接。如果file1有三个字段,那么我可以执行以下操作:
join -1 $field1 -2 $field2 -o 1.1,1.2,1.3 $file1 $file2
但是,如果file1有数百或数千个字段,我该怎么办?我当前的解决方法之一是Python,另一个是在两个已排序的文件上执行comm -12,这两个文件包含来自file1和file2的连接字段值,然后将file1与comm -12生成的文件连接起来。
这可以是file1 输入:
1 A
2 B
3 C
file2 输入:
3 D
4 E
5 F
如何获得输出(第2列中的共享值):
C
不这样做:
join -1 1 -2 1 -o 1.2 $file1 $file2
答案 0 :(得分:0)
我遇到了这个answer,它使用了一种有用的语法。 n
以下是列数。
join -1 1 -2 1 -o"$(echo 1.{2..n})" $file1 $file2