根据数据将文本文件拆分为Unix中的多个文件

时间:2015-05-23 14:45:30

标签: unix split

假设输入文件按照第3列排序(条形码以&#34开头; TCGA"):

View

我想将此文本拆分为与第3列内容相关的新文件(仅输出第1列值):

文件-1:

Joe 1 TCGA-A8-A08L-01A-11W-A019-09 T
John 2 TCGA-A8-A08L-01A-11W-A019-09 T
Jack 3 TCGA-A8-CVDL-01A-11W-A019-09 T
Jane 4 TCGA-A8-CVDL-01A-11W-A019-09 F
Justin 5 TCGA-A8-E08L-01A-11W-A019-09 F
Jasmine 6 TCGA-A8-E08L-01A-11W-A019-09 T
Jacob 7 TCGA-A8-E08L-01A-11W-A019-09 T

文件-2:

Joe
John

文件-3:

Jack
Jane

我怎样才能做到这一点?

编辑:文件的名称可以是任何名称。这不是问题。

1 个答案:

答案 0 :(得分:0)

我尝试过很多东西,例如使用split,为每个段添加前缀和后缀,跟踪前一行等等,但是有一个我最初想不到的极其简单的解决方案:

awk -F' ' '{print $1 > $3}' inputfile

文件名将是第3栏的内容。