4
我正在研究一個需要知道與給定ip關聯的邏輯名(eth0,eth1等)的shell腳本。我正在使用的當前過程是使用過濾器解析ifconfig的輸出並獲取與給定IP關聯的NIC卡。我想知道是否存在一個更簡單的方法或直接流水線Linux命令來獲得上述細節?如何獲取給定與其關聯的IP地址的NIC卡的邏輯名稱?
我正在研究一個需要知道與給定ip關聯的邏輯名(eth0,eth1等)的shell腳本。我正在使用的當前過程是使用過濾器解析ifconfig的輸出並獲取與給定IP關聯的NIC卡。我想知道是否存在一個更簡單的方法或直接流水線Linux命令來獲得上述細節?如何獲取給定與其關聯的IP地址的NIC卡的邏輯名稱?
藉此:
#!/bin/sh
ip=192.168.1.10
iface=$(ip addr | grep $ip | awk '{print $NF}')
echo "Iface is: ${iface}"
輝煌......非常感謝。你能告訴我在$ awk fliter中$ NF的意義嗎?那是我無法弄清楚的一部分。 – csurfer
@csurfer感謝您接受這個答案。 「NF」是當前記錄中的字段數。 '$ NF'指向最後一個字段的值。見'人awk'。你也可以打印:'$ 7'。 – jgb
那麼$ NF的行爲就像是切割-d「」-f <最後一列呢? – csurfer