小编jac*_*row的帖子

重新格式化分隔文件,行拆分为多行

我有这样的输入:

FIELD1   FIELD2   FIELD3   FIELD4
aaaa   bbbb   cccc   dddd
eeee   ffff
           gggg   hhhh
iiii   jjjj   kk   llll
              kk
Run Code Online (Sandbox Code Playgroud)

它应该是一个以空格分隔的记录列表,但有些写错了。

正确的行就像第一行。其他行在中间(第二行)有一个换行符,或者一个字段被写入,因为它在一个字段(第三行的第三个字段)中有一个换行符。

我想要做的是获得这样的有序输出:

FIELD1   FIELD2   FIELD3   FIELD4
aaaa   aaaa   aaaa   aaaa
bbbb   bbbb   bbbb   bbbb
cccc   cccc   cccc   cccc
Run Code Online (Sandbox Code Playgroud)

我想如果我可以修复像 ROW2 这样的一行,修复 ROW3 将是类似的,但我无法理解如何使用某种工具,awk或者一次sed看到不止一行,例如,替换 "\n\s* bbbb”与“bbbb”并修复 ROW2。

编辑:

这是我拥有的真实数据的片段:

G00PFMA1     transition_readonly 2   cifs     0.0.0.0/0             any
G00PFMA7     transition_export_policy_1 1
                                     nfs      10.58.91.134          sys
G00PFMA7     transition_export_policy_1 2
                                     nfs      bmczone.tsy.fm.       sys
                                              hypovereinsbank.de
G00PFMA7     transition_export_policy_1 3
                                     nfs      inf01mz2              sys
Run Code Online (Sandbox Code Playgroud)

字段由空格分隔。ROW1 是每行应该如何,但 ROW2 和 …

sed awk text-processing

3
推荐指数
1
解决办法
54
查看次数

标签 统计

awk ×1

sed ×1

text-processing ×1