gpt4 book ai didi

linux - 如何查找网络接口(interface)名称

转载 作者:IT王子 更新时间:2023-10-29 00:38:13 26 4
gpt4 key购买 nike

我有一个在各种不同的 Ubuntu Linux 机器上运行的 bash 脚本。它的工作是找出本地主机的 LAN IPv4 地址。

脚本正在使用

ip addr show eth0 | sed -n '/inet /{s/^.*inet \([0-9.]\+\).*$/\1/;p}'

这很好,但有些机器出于某种原因使用 eth1 而不是 eth0。我希望能够发现 LAN iface 名称,因此我可以在此处替换它而不是 eth0。

当然,如果你能想出一个不同的 oneliner 来做同样的事情,那就太好了。

最佳答案

主网卡通常会有一个默认路由。所以:

ip -o -4 route show to default

网卡:

ip -o -4 route show to default | awk '{print $5}'

网关:

ip -o -4 route show to default | awk '{print $3}'

与 ifconfig 不同,ip 具有一致且可解析的输出。它只适用于 Linux;它不适用于其他 Unixen。

关于linux - 如何查找网络接口(interface)名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12474172/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com