[英]Get wireless SSID through shell script on Mac OS X
有没有办法在 Mac OS X 上通过 shell 脚本获取当前无线网络的 SSID?
命令
/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport -I
将为您提供有关当前无线网络连接的详细信息。
要获得特定的 SSID,请使用以下命令:
/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport -I | awk -F: '/ SSID/{print $2}'
要检索可能包含冒号和空格的 SSID 名称:
/System/Library/PrivateFrameworks/Apple80211.framework/Resources/airport -I | awk -F' SSID: ' '/ SSID: / {print $2}'
哪里没有需要重新发明的轮子?
networksetup -getairportnetwork en1 | cut -c 25-
是您在 10.6 上使用的,10.7 将“硬件端口”名称从“机场”更改为“Wi-Fi”,因此您少了一个字母,
aru$ networksetup -getairportnetwork en1 | cut -c 24-
Yorimichi
如果设备的名称不是en1
,则需要首先获得正确的设备名称,而不是相应的 SSID:
networksetup -listallhardwareports | awk '/Wi-Fi/{getline; print $2}' | xargs networksetup -getairportnetwork
以下已在 OS X 上进行测试,并在没有任何硬编码列宽的情况下打印 SSID:
system_profiler SPAirPortDataType | awk -F':' '/Current Network Information:/ {
getline
sub(/^ */, "")
sub(/:$/, "")
print
}'
本质上,这需要system_profiler SPAirPortDataType
的输出,并在“ Current Network Information:
”修剪前导空格和尾随冒号后打印行(因为 SSID 可以包含:
s)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.