需要有关shell脚本的帮助。
我在文件中有以下结果
name-label ( RW) : host1
networks (MRO): 1/ip: 192.168.1.2; 0/ip: 192.168.1.10
name-label ( RW) : host2
networks (MRO): 1/ip: 192.168.1.15; 1/ipv6/0: fe80::9060:b6ff:fec1:7bbb; 0/ip: 192.168.1.20; 0/ipv6/0: fe80::286d:7cff:fefe:3ed7
我只需要文件中的主机名和相应的0 / ip值。最终输出将是
host1 192.168.1.10
host2 192.168.1.20
答案 0 :(得分:0)
Perl解决方案:
perl -ne '/^name-label .*: (.+)/ and $name = $1; m(0/ip: ([0-9.]+)) and print "$name $1\n"'
名称标签存储在变量中,在处理下一行时用IP打印。
答案 1 :(得分:-1)
#!/bin/bash
grep ") :" FILENAME | sed 's/.*) ://' | sed 's/networks.*ip://' | sed 's/;.*//'
FILENAME是您的文件。