使用 sed/awk/perl/pcregrep 在 unix 文件中加入随机行数直到大括号匹配 [关闭]

问题描述 投票:0回答:0

需要连接以#( 开头的随机行数,直到大括号匹配并替换为 unix 文件中的一个空格。文件中可能会多次出现这样的情况。一个衬里 awk 、 sed 、 perl 解决方案会更有帮助。其他行在应该不受影响的大文件中使用“....”显示

例如:
....
abc_mod #(
.h_res(3),
.s_res(10)
)
u_abc_mod
(
....
....
....
def_mod #(
.lp(4),
.clk(9),
.添加(5),
.d(8),
.por(1)
)
u_def_mod
(
....

需要匹配等同于#(直到行首的第一个大括号)后跟一个额外的新行(可以包括随机行数)的模式,并使用 sed/awk/perl/pcregrep one liner 替换为单个空格

期望的输出:
....
abc_mod u_abc_mod
(
...
def_mod u_def_mod
(
...
...

谢谢!

perl awk sed grep csh
© www.soinside.com 2019 - 2024. All rights reserved.