📌

ipコマンドで特定のNICだけを表示したい(Tips)

2023/05/20に公開約1,300字

ipコマンドで特定のNICだけを表示(この例ではeth0

root@server01:~# ip a s eth0
2: eth0@if8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether fe:73:0e:xx:xx:xx brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 192.168.0.3/24 brd 192.168.0.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::fc73:eff:fefe:3d1e/64 scope link
       valid_lft forever preferred_lft forever
  • aaddressの省略形
  • sshowの省略形

もっとコンパクトに表示したい

root@server01:~# ip -br a s eth0
eth0@if8         UP             192.168.60.3/24 fe80::fc73:eff:fefe:3d1e/64
  • -br-briefの省略形

grepと組み合わせて特定の値か文字列を持つNICだけを表示したい

root@server01:~# ip -o a | grep "0.3"
2: eth0    inet 192.168.0.3/24 brd 192.168.60.255 scope global eth0\       valid_lft forever preferred_lft forever
  • -o-onelineの省略形

ip addressはオンラインマニュアル(man ip)やip helpで分かるのですがshowは見つけることが出来ません

ip address helpを実行するとaddressオブジェクトの場合のサブコマンドのhelpが表示されるので、ここで見つけることができます。そんなサブコマンドなんてオンラインマニュアルに書かれていないじゃないかと憤ってしまいますが、よくよく見直して見るとマニュアル冒頭に記載があります。

NAME
       ip - show / manipulate routing, network devices, interfaces and tunnels

SYNOPSIS
       ip [ OPTIONS ] OBJECT { COMMAND | help }

なんでこうも気づきにくいのかと考えてみると、コマンドを省略したip OBJECTで実行ができるのでOBJECTの部分をコマンドと誤解してしまうためだと思います。そのため、COMMANDの存在に気づけなくなってしまうのだと思います。

Discussion

ログインするとコメントできます