【问题标题】:How can I get 2nd and third column in tab delim file in bash?如何在 bash 的制表符分隔符文件中获取第二列和第三列?
【发布时间】:2023-03-03 01:32:02
【问题描述】:

我想使用 bash 来处理制表符分隔的文件。我只需要第二列和第三列到一个新文件。

【问题讨论】:

    标签: bash process tabs delimited


    【解决方案1】:

    cut(1) 是专门为此目的而制作的:

    cut -f 2-3 input.txt > output.txt
    

    【讨论】:

      【解决方案2】:

      剪切可能是这里最好的选择,其次是awk

      awk -F"\t" '{print $2 "\t" $3}' input > out
      

      【讨论】:

      • 该文件有 200 万行,所以我猜剪切很好...谢谢您的帮助
      • awk 在您想要更改列的顺序时特别方便。 cut 不能那样做!
      【解决方案3】:

      扩展 carl-norum 的答案,仅使用制表符作为分隔符,而不是所有空格:

      cut -d$'\t' -f 2-3 input.txt > output.txt
      

      d 和 $ 之间不要加空格

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-05-27
        • 2023-03-06
        • 2014-06-06
        • 2021-09-11
        • 2013-03-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多