【发布时间】:2011-06-20 08:36:05
【问题描述】:
我有两个文件(制表符分隔)一个文件有 4 列和 n 行,第二个文件有 2 列和 n 行。
第一个文件的第 4 列与第二个文件的第 2 列相同。
我想要第三个文件,其中包含文件 1 中的前四列和文件 2 中的第 5 列。
对一行 bash 脚本的任何建议。
【问题讨论】:
-
将输入添加到问题以及预期输出
我有两个文件(制表符分隔)一个文件有 4 列和 n 行,第二个文件有 2 列和 n 行。
第一个文件的第 4 列与第二个文件的第 2 列相同。
我想要第三个文件,其中包含文件 1 中的前四列和文件 2 中的第 5 列。
对一行 bash 脚本的任何建议。
【问题讨论】:
试试join
join FILE1 FILE2 -1 4 -2 2 -t"tab"
根据 FILE1 的第 4 个字段 (-1 4) 和 FILE2 的第 2 个字段 (-2 2) 表示文件 FILE1 和 FILE2 之间的连接
【讨论】:
t"tab" 选项指定字段分隔符(如此处示例所示:compute.cnr.berkeley.edu/cgi-bin/man-cgi?join)
查看join 命令,参见指南here
【讨论】:
制表符试试
join -t \t files1 …
【讨论】: