微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 匹配模式,插入模式,直到下一个匹配

我正在努力使用bash工具根据所需的输出格式化文件.这是一个示例:

address="192.168.1.1"
portid="443"
portid="2000"
address="192.168.1.2"
portid="443"
portid="2000"

本质上,我想要实现的是搜索模式(在这种情况下,整个IP地址行),并将其添加到每个后续行,直到下一个匹配(在下一个IP地址之前).所需的输出是这样的:

address="192.168.1.1"portid="443"
address="192.168.1.1"portid="2000"
address="192.168.1.2"portid="443"
address="192.168.1.2"portid="2000"

如何使用grep,awk或sed实现这一目标?

解决方法:

考虑到您的实际文件与示例Input_file相同:

awk '/address/{val=$0;next} {print val $0}'  Input_file

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐