小编pch*_*oor的帖子

需要将 PIPE 符号之间的多个空格替换为无空格

给定一个管道分隔的文件:

1|123|A |Normal Behaviour Exhibit 
2|345|B|Embedded|delimiter  
3|678|D|dimension 1"
4| |   | | nvalue
5| | | |Missing cvalue
Run Code Online (Sandbox Code Playgroud)

我需要使用 sed 或 awk 等 Unix 工具来替换所有出现| |||。符号之间可以有多个空格,|如上面第 4 行所示。

预期输出:

1|123|A |Normal Behaviour Exhibit 
2|345|B|Embedded|delimiter  
3|678|D|dimension 1"
4|||| nvalue
5||||Missing cvalue
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下sed命令,但没有达到预期的结果:

sed 's/| *|/||/g' S.txt > S1.txt

1|123|A |Normal Behavior Exhibit  
2|345|B|Embedded|delimiter  
3|678|D|dimension 1"
4||   || nvalue
5|| ||Missing cvalue
 
Run Code Online (Sandbox Code Playgroud)

sed awk

2
推荐指数
3
解决办法
894
查看次数

标签 统计

awk ×1

sed ×1