如何解决如何向yaml中的特定键添加多个值?尼普兰相关
我正在尝试在 Linux 中配置 IPv6 地址,但我很困惑如何将值添加到 netplan 的 YAML 文件中,这是文件:
network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: no
addresses: [155.128.134.198/23,'2002:18f0:b009:f84:5200:03ff:fdf7:d0c2/64']
gateway4: 155.128.134.198
nameservers:
addresses: [108.61.10.10]
routes:
- to: 169.254.0.0/16
via: 155.138.148.1
metric: 100
我想在键 addresses
处添加 IPv6 地址,但要保留这些地址。是否可以通过 yq
或以任何其他方式进行一些简单的操作,以便我可以从中执行 bash 脚本?我还没有找到任何工具,它是 netplan 的特定工具,可以轻松地在该范围内添加地址。任何帮助将不胜感激。
解决方法
要从 shell 脚本追加,似乎可以使用最新版本的 yq。
我可以按如下方式附加到它:
$ yq e '.network.ethernets.ens3.addresses += "127.0.0.1/32"' myyaml.yml
network:
version: 2
renderer: networkd
ethernets:
ens3:
dhcp4: no
addresses: [155.128.134.198/23,'2002:18f0:b009:f84:5200:03ff:fdf7:d0c2/64',127.0.0.1/32]
gateway4: 155.128.134.198
nameservers:
addresses: [108.61.10.10]
routes:
- to: 169.254.0.0/16
via: 155.138.148.1
metric: 100
请注意,这不会更新实际文件,您可以将该输出通过管道传输到新文件,也可以使用 -i
标志就地更新它。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。