如何讓“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)

相關內容