2010-12-19 56 views

回答

83

命令

/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I 

會給你你當前的無線網絡連接的詳細信息。

要獲得具體的SSID,使用這個命令:

/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -I | awk '/ SSID/ {print substr($0, index($0, $2))}' 
+0

當我執行第二個命令時,它無法正常工作。我連接的SSID中有空格,該命令僅顯示第一個單詞。 – 2010-12-19 00:34:55

+1

@Mark:我已經更新了第二個命令,以便在其中使用空格的SSID工作。希望這可以幫助! – Chetan 2010-12-19 00:53:15

+1

告訴'awk'使用':'作爲分隔符,您將得到您的整個SSID:'awk -F':''/ SSID/{print $ 2}'' – Johnsyweb 2010-12-19 00:54:46

4

以下已在OS X進行了測試,並打印SSID沒有任何硬編碼列寬度:

system_profiler SPAirPortDataType | awk -F':' '/Current Network Information:/ { 
    getline 
    sub(/^ */, "") 
    sub(/:$/, "") 
    print 
}' 

本質上,這需要system_profiler SPAirPortDataType的輸出,並在「Current Network Information:」修剪前導空格和尾部冒號(因爲SSID可包含: s)後打印該行。

+2

'system_profiler'在我的OS X 10.8上有一個小延遲。 'networksetup'需要機場接口名稱。我更喜歡'機場| sed -n's/^ * SSID:// p'' – zhangyoufu 2013-06-28 08:07:28

+0

謝謝。在macOS Sierra上,它是'airport --getinfo | sed -n's/^ * SSID:// p'' – 2017-05-16 20:56:14

30

其中不是有沒有需要重新發明的車輪?

networksetup -getairportnetwork en1 | cut -c 25- 

是你會在10.6幹什麼用的,從10.7「機場」到「無線網絡連接」改「硬件端口」的名字,因此你會切斷少了一個字母,

aru$ networksetup -getairportnetwork en1 | cut -c 24- 
Yorimichi 
+5

注意上面的Johnsyweb的註釋re:awk;而不是使用'cut',你可以運行'networksetup -getairportnetwork en1 | awk -F「:」'{print $ 2}'「,無論標籤是否包含」Airport「或」Wi-Fi「,該標籤都可以工作。 – larsks 2012-02-05 23:14:16

+2

這裏的缺點是你必須知道你的wlan接口名稱。我在e1上看到有一個內置以太網(分配爲e0)的e1,使得WiFi接口爲'e1',這個答案似乎就是這種情況。其他人有'e0'。當然,這是一個簡單的編輯,但如果你試圖使它通用通過@Chetan答案似乎更容易 – nhed 2014-12-10 14:50:26

+0

或者使用:networksetup -getairportnetwork EN1 | cut -d':'-f2 |切-c 2- – RichS 2015-04-16 07:56:01