并感谢您考虑我的问题!
我有这种格式的 nagios 配置文件:
define host{
use generic-camera
host_name camera_7
alias camera facing the 7th door at headquarters
address 172.16.202.21
parents hq_switch
hostgroups cameras,fixed-cameras
}
我想要完成的是使用 sed 匹配 IP 地址,并将文本附加到它之前的行。我已经看到很多建议如何将文本附加到与正则表达式匹配的行,但没有看到如何附加到前一个。我想将地址下列出的 IP 的 MAC 地址附加到别名行。这就是我希望在 sed 运行后需要注意的事项:
define host{
use generic-camera
host_name camera_7
alias camera facing the 7th door at headquarters MAC 00:01:02:aa:bb:cc
address 172.16.202.21
parents hq_switch
hostgroups cameras,fixed-cameras
}
它需要匹配 IP 的原因是 bash 脚本可以从其地址中获取设备的正确 MAC。
我也有可用的 awk,如果这是 awk 比 sed 写得更干净的情况。
感谢您的建议。