我想使用linux cut命令从文件中提取列,然后使用paste命令将同一列插入第二个文件。我可以通过保存剪切命令的结果,然后在其上运行粘贴和第二个文件来完成此操作。但在我看来,必须有一些单行程,这不涉及保存中间结果。谁知道那是什么?感谢。
例如,第一个文件可能看起来像
date weight
1-1-2010 weight1
1-2-2010 weight2
1-3-2010 weight3
,第二个可能看起来像
date blood_press
1-1-2010 bp1
1-2-2010 bp2
1-3-2010 bp3
我希望输出
date weight blood_press
1-1-2010 weight1 bp1
1-2-2010 weight2 bp2
1-3-2010 weight3 bp3
毋庸置疑,数据比这更大,更复杂。但是这给出了我需要做的事情的想法。再次感谢。
P.S。由于原因太详细,“join”命令无效。
答案 0 :(得分:7)
如果您可以使用制表符分隔符(或其他单个字符),则可以执行
cut [column-spec] file1 | paste file2 - > file3
-
命令中的paste
读取标准输入,当然包含cut
生成的行。这些值没有匹配,这是一种直线复制和粘贴。