如何根据 Solaris 机器上的 IP 地址找到设备名称(e1000g2、e1000g3 等)
例如
ifconfig -a | grep 10.106.134.133
inet 10.106.134.133 netmask ffffff00 broadcast 10.106.134.255
ifconfig 用 grep 命令查看时只显示有 IP 地址的行,且设备名称出现在 IP 地址之前
所以我的目标是根据 Solaris 机器上的 IP 地址匹配设备名称,然后将设备名称插入到参数(ksh)中
请指教?
完整示例:来自 ifconfig -a (我获取 IP 和设备名称,我需要的是根据 IP 地址找到设备名称,并将设备名称插入到参数中)
e1000g2: flags=201000843<UP,BROADCAST,RUNNING,MULTICAST,IPv4,CoS> mtu 1500 inet 10.106.134.133 netmask ffffff00 broadcast 10.106.134.255
答案1
这感觉像是一个可怕的黑客攻击,但是现在
#!/bin/ksh
ipaddr=$1
ifconfig -a | nawk '/'"$ipaddr"'/ { printf "%s",prev;print };{prev=$0}' | awk '{print $1,$8}'
和
usage scriptname ip.add.re.ss