lsblk
ブロックデバイスのように設定されたネットワークインタフェースをツリービューで視覚化するLinuxコマンドはありますか?
たとえば、そのようなプログラムの出力は次のようになります(ボトムアップアプローチ)。
eth0
└─bond0
├─bond0.42
│ └─br42
└─bond0.43
└─br43
eth1
└─bond0
├─bond0.42
│ └─br42
└─bond0.43
└─br43
tap100i0
└─br42
tap100i1
└─br43
tap101i0
└─br42
tap101i1
└─br43
または次のようになります(トップダウンアプローチ)。
br42
├─bond0.42
│ └─bond0
│ ├─eth0
│ └─eth1
├─tap100i0
└─tap101i0
br43
├─bond0.43
│ └─bond0
│ ├─eth0
│ └─eth1
├─tap100i1
└─tap101i1
注:私は正確な出力を生成するツールを見つけるのではなく、同様の結果を出すコマンドを知っている人がいるかどうかを尋ねたいと思います。
ベストアンサー1
既存のユーティリティでオプションを検索しましたが、何も見つかりませんでした。それでも私の観点からは必須機能が役に立つと思う。だからip link show
私はコマンドを解析し、質問から必要な出力に似た内容を印刷するための単純なbashスクリプトを作成しました。
$ ./nettree.sh -u
eth3
bond1
bond0
eth2
bond0
eth1
bond0
eth0
lupen3
bond1
bond0
lo
lxcbr0
virbr0
veth6404e35
docker0
スクリプトをgithubにプッシュしました。https://github.com/zabojcampula/show-net-devices-tree