您可以使用什么命令来查找 Linux 中 eth0 的网关 IP 地址(即家庭路由器地址)?
我需要从命令行应用程序获取 IP 地址以便在 shell 脚本中使用。
答案1
仅打印出默认的 gw IP:
route -n | grep 'UG[ \t]' | awk '{print $2}'
打印所有接口的路由信息:
route -n
或者
netstat -rn
答案2
ip route show 0.0.0.0/0 dev eth0 | cut -d\ -f3
是我的参赛作品:)
答案3
netstat -r
您可以从或的输出中获取系统的默认网关route
答案4
从 iproute2 4.14.1 开始,您还可以为许多命令输出 JSON。
因此这将起作用:
ip -j route show 0.0.0.0/0 dev <interface> | jq -r '.[0].gateway'
就你的情况而言:
ip -j route show 0.0.0.0/0 dev eth0 | jq -r '.[0].gateway'
请注意,你需要杰奇为此,但取决于您的环境可能已经可用 - 我知道在我的情况下是这样。