Вы могли бы поместить что-то вроде этого Applescript в вас Яблочное меню и используйте его, чтобы получить список предпочитаемых сетей, выбрать его и подключиться к нему.
set the getList to paragraphs of (do shell script "networksetup -listpreferredwirelessnetworks en0")
set title to item 1 of getList
set wifi_list to items 2 thru -1 of getList
set the chosen_newtwork to choose from list the wifi_list with prompt "Choose a " & title without multiple selections allowed
if the chosen_newtwork is false then return
do shell script "networksetup -setairportnetwork en0 " & (chosen_newtwork as string)
(Я не могу сказать, что это идеально, так как я обнаружил, что иногда не всегда хочется подключиться, но я не уверен, что это только мой маршрутизатор / WiFi)
Обновить.
Используя ту же идею, описанную выше, вы также можете создать запрещенный список плохих ssids
И отфильтровать их.
Основная команда использует аэропорт Команда framework вместо команды networksevice, поэтому немного медленнее. Но сканирует для имеется в наличии сети, а не только вы предпочли.
set bannedList to {"BTWifi-X"}
set wifi_list to {}
set the getList to paragraphs of (do shell script "/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport -s |awk '{print $1}'")
set title to item 1 of getList
repeat with i from 2 to number of items in getList
set this_item to item i of getList
if this_item is not in bannedList then
if this_item is not in wifi_list then -- stops duplicates from original list
copy this_item to end of wifi_list
end if
end if
end repeat
set the chosen_newtwork to choose from list the wifi_list with prompt "Choose a " & title without multiple selections allowed
if the chosen_newtwork is false then return
do shell script "networksetup -setairportnetwork en0 " & (chosen_newtwork as string)