【问题标题】:Concatenate 2 columns within a single .txt file and separate by ":" using awk?使用 awk 连接单个 .txt 文件中的 2 列并用“:”分隔?
【发布时间】:2016-01-13 19:46:15
【问题描述】:

我有一个大约 4000 万行制表符分隔的 .txt 文件,其中包含以下列:

1   rs58108123  10583
1   rs58108140  10611
1   rs58123442  13302
...

我需要将第 1 列和第 3 列合并到第 1 列位置的单个列中。这是所需的输出:

1:10583 rs58108123
1:10611 rs58108140
1:13302 rs58123442
...

据我了解,这可以使用 awk 命令完成。我对命令行很陌生,所以我无法弄清楚完成这项任务所需的规范。如果您能提供任何可能的解决方案的解释,将不胜感激!

非常感谢!!

【问题讨论】:

  • 您可以将链接图像中的数据直接发布到您的帖子中吗?
  • 请展示您的编码工作。

标签: bash awk


【解决方案1】:

给你:

awk '{print $1":"$3"\t"$2}' < infile.txt 

这将打印 Column $1:Column $3 后跟一个制表符“\t”,然后是 Column $2。

您可以通过在命令末尾添加&gt; outfile.txt 将输出保存到文件中。

您可以在此处找到更多简单 awk 语法的示例:http://www.thegeekstuff.com/2010/01/awk-introduction-tutorial-7-awk-print-examples/

【讨论】:

猜你喜欢
  • 1970-01-01
  • 2019-05-15
  • 1970-01-01
  • 1970-01-01
  • 2014-05-29
  • 1970-01-01
  • 2015-04-17
  • 2014-07-11
  • 1970-01-01
相关资源
最近更新 更多