Получить беспроводной SSID через скрипт оболочки в Mac OS X
Есть ли способ получить SSID текущей беспроводной сети через скрипт оболочки в Mac OS X?
3 ответа
Решение
Команда
/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))}'
Где нет колеса, нуждающегося в переизобретении?
networksetup -getairportnetwork en1 | cut -c 25-
это то, что вы бы использовали на 10.6, 10.7 изменили имя "Аппаратного порта" с "Аэропорт" на "Wi-Fi", и, следовательно, вы обрезали бы на одну букву меньше
aru$ networksetup -getairportnetwork en1 | cut -c 24-
Yorimichi
Следующее было протестировано на OS X и печатает SSID без какой-либо жестко заданной ширины столбца:
system_profiler SPAirPortDataType | awk -F':' '/Current Network Information:/ {
getline
sub(/^ */, "")
sub(/:$/, "")
print
}'
По сути, это занимает вывод system_profiler SPAirPortDataType
и печатает строку после "Current Network Information:
"обрезание начальных пробелов и конечного двоеточия (поскольку SSID может содержать :
с).