
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)