gpt4 book ai didi

sed - 'sed' : How to add new line after string match + 2 lines

转载 作者:行者123 更新时间:2023-12-04 17:10:36 29 4
gpt4 key购买 nike

我想在字符串匹配 + 2 行之后添加一个新行。

这是我的文件:

allow-hotplug eth0
auto eth0
iface eth0 inet static
address 172.16.2.245
netmask 255.255.254.0
gateway 192.168.1.1

allow-hotplug eth1
#auto eth1
iface eth1 inet static
address 192.168.0.240
netmask 255.255.255.0

iface eth2 inet static
address 192.168.2.240
netmask 255.255.255.0

我想在找到“iface eth1”+ 2 行后添加“网关 192.168.1.1”。

示例:执行 sed 命令后我需要得到什么
allow-hotplug eth0
auto eth0
iface eth0 inet static
address 172.16.2.245
netmask 255.255.254.0
gateway 172.16.2.254

allow-hotplug eth1
#auto eth1
iface eth1 inet static
address 192.168.0.240
netmask 255.255.255.0
gateway 192.168.1.1

iface eth2 inet static
address 192.168.2.240
netmask 255.255.255.0

我知道如何在之后查找和移动 2 行,在特定字符串之后追加行等,但不合并这 2 个操作。
斯蒂芬

最佳答案

这似乎有效:

sed '/^iface eth1/{N;N;s/$/\ngateway 192.168.1.1/}' input.txt

添加 -i选项 sed将结果保存回 input.txt .

关于sed - 'sed' : How to add new line after string match + 2 lines,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16214828/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com