如何让“ip addr show”仅显示特定类型的链接

如何让“ip addr show”仅显示特定类型的链接

如何ip addr show只显示特定类型的链接,而不使用 grep 等辅助进程进行过滤?

根据男人 8 IP 地址,这应该可以使用以下命令,但是当我运行这些命令时,我没有得到任何结果:

ip addr show type "link/loopback"
ip addr show type "loopback"

答案1

简短而简单:

hostname -i

通常,我不是在寻找环回,而是在寻找 ip

hostname -I 

如果您想要同时减少文本噪音和添加颜色

ip addr | grep inet 

答案2

我最终用 Python 做了这件事。我还没有尝试过使用 grep 来翻译它。

import re
import shlex
import subprocess

""" Return a list of interface name strings """

RE_PATT = "^\d+: (\w+).+\n +link/loopback"
proc = subprocess.run(
    shlex.split("ip link show"),
    stdout=subprocess.PIPE,
    universal_newlines=True,
)
interface_list = re.findall(RE_PATT, proc.stdout, re.MULTILINE)

相关内容