【发布时间】:2020-02-08 15:21:48
【问题描述】:
所以我有一个文本文件,问题是空格和制表符都用于分隔列值,由于不一致,这给我带来了很多问题。例如:
ID Name Class Time
1 Johnson 5-D 6pm
.
.
.
正如您在示例中看到的,ID 和 Name 都用一个空格分隔,而 Name 和 Class 用制表符分隔。
我如何编写一个 sed 命令来用制表符替换文本文件中的所有单个空格?我希望生成一个新的文本文件,如下所示:
ID Name Class Time
1 Johnson 5-D 6pm
此时对齐无关紧要,我只想用制表符替换单个空格。
编辑:也欢迎使用 awk 脚本
【问题讨论】:
-
您也可以添加您尝试过的内容吗?如果您需要资源来开始使用
sed,请参阅stackoverflow.com/tags/sed/info -
看看
man unexpand -
记录一下:在上面的文本示例中,此阶段根本没有制表符。
-
您的任何字段都可以包含空白或制表符吗?
-
@tink SO 有一个不幸的习惯,就是在渲染 markdown 时将制表符变成空格。让提供示例 TSV 数据变得很痛苦。