Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取每个ip地址/ifconfig接口命令Linux的前3行_Linux_Ifconfig_Ipconfig - Fatal编程技术网

获取每个ip地址/ifconfig接口命令Linux的前3行

获取每个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

我试图从一些虚拟机上获取前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  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
    :搜索并打印不以空白开头的行,同时打印以下两行
  • 代码> /^ [[空间:] ] *$/p:搜索并打印空白行
将输出重定向到文件并阅读前3行(据我所知,Linux中没有ipconfig)@Drako:你说得对,我编辑了我的问题。它与ip地址有关,而不是ipconfig。对于解决方案,我更喜欢CWLiu的。请避免“给我密码”的问题。而是显示您正在处理的脚本,并说明问题所在。也看到了,非常感谢,这正是我需要的