以下のようにIPアドレスを表示したいと思います。
lo : 127.0.0.1
eth0 : 192.168.5.123
eth1 : 192.172.0.212
wlan0 : 10.1.0.124
すべてのIPアドレスを印刷できますifconfig | awk '/inet addr/{print substr($2,6)}'
。ただし、IPのみを印刷します。各システムには固有のインターフェイス名とアドレスがあります。したがって、私のスクリプトはIPアドレスに関連するインターフェースを表示する必要があります。
ベストアンサー1
以下は目的の操作を行います。
$ ip addr | awk '
/^[0-9]+:/ {
sub(/:/,"",$2); iface=$2 }
/^[[:space:]]*inet / {
split($2, a, "/")
print iface" : "a[1]
}'
lo : 127.0.0.1
br0 : 10.1.10.12