【发布时间】:2019-05-09 14:17:59
【问题描述】:
我有一个结构类似于的文本文件:
2013-11-22 eps Ind 2400000.23551544 100.
2013-11-22 eps Ind 2400000.23551544 100.
2013-11-22 eps Ind 2400000.23551544 100.
2013-11-22 HD 217987 2400000.23551544 900.
2013-11-22 TOI-134 2400000.23551544 900.
2013-11-22 tau Cet 2400000.23551544 60.
2013-11-22 BD+01 316 2400000.23551544 300.
2013-11-22 BD+01 316 2400000.23551544 300.
2013-11-22 BD+01 316 2400000.23551544 300.
2013-11-22 BD+01 316 2400000.23551544 300.
我需要使用 bash 来提取它。我遇到的主要问题是,虽然列是制表符分隔的,但列中的名称可能有制表符或空格,因此使用awk 在某些情况下会给我错误的列。如何按列分隔文本文件,但按索引?所有列的字符宽度都相同——考虑到空格是一个字符。每列都有不同的宽度。
请注意,eps Ind、HD 217987 和 BD+01 316 都在同一列上。
谢谢 豪尔赫
【问题讨论】:
-
@EdMorton:我认为空格是一个字符,我这样做错了吗?无论如何,我已经更新了我的问题
-
@EdMorton:
BD+01 316只是一个字段。
标签: awk multiple-columns