Posted on 03-08-2024 11:19 AM
As of macOS Sonoma 14.4 using "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport --getinfo" no longer returns info about the active Wi-Fi connection. If you want to collect the active SSID for macOS 14.4 or later you can use the wdutil tool and here's an EA to do that:
#!/bin/sh
# EA - ActiveSSID
#
# Note: Using wdutil instead of networksetup so I don't need to know what
# interface is Wi-Fi
# Returns the currently active SSID
activeSSID=$(/usr/bin/wdutil info | /usr/bin/awk '/SSID :/ { print $NF }')
echo "<result>$activeSSID</result>"
Solved! Go to Solution.
Posted on 03-11-2024 08:10 AM
This one works for me.
#!/bin/sh
##Get the wireless port ID
WirelessPort=$(networksetup -listallhardwareports | awk '/Wi-Fi|AirPort/{getline; print $NF}')
##What SSID is the machine connected to
SSID=$(networksetup -getairportnetwork "$WirelessPort" | cut -d " " -f4)
echo "<result>$SSID</result>"
Posted on 03-08-2024 12:53 PM
If you didn't want to have so many spaces in your call, you can use
/usr/bin/wdutil info | /usr/bin/awk '/SSID/ { print $NF }' | head -n 1
Posted on 03-11-2024 08:10 AM
This one works for me.
#!/bin/sh
##Get the wireless port ID
WirelessPort=$(networksetup -listallhardwareports | awk '/Wi-Fi|AirPort/{getline; print $NF}')
##What SSID is the machine connected to
SSID=$(networksetup -getairportnetwork "$WirelessPort" | cut -d " " -f4)
echo "<result>$SSID</result>"
a month ago
@daniel_behan As of macOS 14.5 Apple changed
/usr/bin/wdutil info
to return "redacted" for MAC Address, SSID, and BSSID so calling networksetup as your EA does is currently the only way to get the SSID.
I don't know if whoever at Apple though removing that info from wdutil will do the same to networksetup but here's hoping.
Thursday
Is there any way to get the BSSID as well?