获取每个ip地址/ifconfig接口命令Linux的前3行
我试图从一些虚拟机上获取前3行ip地址/ifconfig,其中一些运行在Ubuntu上,一些运行在CentOS上 例如:获取每个ip地址/ifconfig接口命令Linux的前3行,linux,ifconfig,ipconfig,Linux,Ifconfig,Ipconfig,我试图从一些虚拟机上获取前3行ip地址/ifconfig,其中一些运行在Ubuntu上,一些运行在CentOS上 例如: eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9001 inet 172.31.106.100 netmask 255.255.240.0 broadcast 172.31.111.255 inet6 fe80::10c5:1dff:fec0:803e prefix
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9001
inet 172.31.106.100 netmask 255.255.240.0 broadcast 172.31.111.255
inet6 fe80::10c5:1dff:fec0:803e prefixlen 64 scopeid 0x20<link>
ether 12:c5:1d:c0:80:3e txqueuelen 1000 (Ethernet)
RX packets 7483 bytes 7706844 (7.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2998 bytes 470781 (459.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 12100 bytes 3865475 (3.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 12100 bytes 3865475 (3.6 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth0:flags=4163 mtu 9001
inet 172.31.106.100网络掩码255.255.240.0广播172.31.111.255
inet6 fe80::10c5:1dff:fec0:803e预桥64作用域ID 0x20
乙醚12:c5:1d:c0:80:3e txqueuelen 1000(以太网)
接收数据包7483字节7706844(7.3 MiB)
接收错误0丢弃0超出0帧0
发送数据包2998字节470781(459.7kib)
发送错误0丢弃0溢出0载波0冲突0
低:标志=73 mtu 65536
inet 127.0.0.1网络掩码255.0.0.0
inet6::1前缀轴128作用域ID 0x10
循环txqueuelen 1000(本地环回)
接收数据包12100字节3865475(3.6 MiB)
接收错误0丢弃0超出0帧0
发送数据包12100字节3865475(3.6 MiB)
发送错误0丢弃0溢出0载波0冲突0
从这一行中,我只需要得到以下部分:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 9001
inet 172.31.106.100 netmask 255.255.240.0 broadcast 172.31.111.255
inet6 fe80::10c5:1dff:fec0:803e prefixlen 64 scopeid 0x20<link>
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
eth0:flags=4163 mtu 9001
inet 172.31.106.100网络掩码255.255.240.0广播172.31.111.255
inet6 fe80::10c5:1dff:fec0:803e预桥64作用域ID 0x20
低:标志=73 mtu 65536
inet 127.0.0.1网络掩码255.0.0.0
inet6::1前缀轴128作用域ID 0x10
这同样适用于ip地址命令。
有没有办法使用Linux命令来实现这一点
非常感谢,
Romain您可以使用
sed
来执行此操作
ifconfig | sed -En '/^[^[:space:]]/,+2p; /^[[:space:]]*$/p'
简要说明
- 管道结果将由
sed
:搜索并打印不以空白开头的行,同时打印以下两行/^[^[:space:][]/,+2p