0
我的機器有多個以太網設備,如eth0
,eth1
等。其中一個IP的IP範圍爲192.168.x.x
。我如何使用shell腳本獲取設備名稱? (優選地使用ip
命令而不是ifconfig
)Shell腳本:從子網掩碼獲取eth名稱
喜歡
eth0 192.168.2.3
或 eth3 192.168.5.6
我的機器有多個以太網設備,如eth0
,eth1
等。其中一個IP的IP範圍爲192.168.x.x
。我如何使用shell腳本獲取設備名稱? (優選地使用ip
命令而不是ifconfig
)Shell腳本:從子網掩碼獲取eth名稱
喜歡
eth0 192.168.2.3
或 eth3 192.168.5.6
可以嘗試這;
ip -o -4 a | awk '$2 ~ "eth" { gsub(/\/.*/, "", $4); print $2" "$4}'
到所有接口;
ip -o -4 a | awk ' { gsub(/\/.*/, "", $4); print $2" "$4}'
如:
[email protected]:/tmp/$ ip -o -4 a | awk ' { gsub(/\/.*/, "", $4); print $2" "$4}'
lo 127.0.0.1
eth0 x.x.x.x
docker0 x.x.x.x
[email protected]:/tmp/$ ip -o -4 a | awk '$2 ~ "eth" { gsub(/\/.*/, "", $4); print $2" "$4}'
eth0 x.x.x.x
人的ip說:以 '\' 字符
-o,-oneline 輸出在一行上的每個記錄,代替換行符。當您想要 用wc(1)或grep(1)輸出計數記錄時,這很方便。
-4 a:只顯示TCP/IP IPv4