Como ocultar ou remover nomes de rede inúteis do ícone da barra de menus wifi

17

Tenho vizinhos desagradáveis ​​que acham engraçado usar palavras ofensivas para seus SSIDs.

Gostaria de remover esses SSIDs, no mínimo, do ícone da barra de menus wifi. Se for mais fácil, esconder / removê-los completamente do sistema operacional (ícone da barra de menus e prefs do sistema) seria aceitável.

Eu sou um novato no OS X, então nem sei por onde começar.

Prefiro soluções integradas (leia-se: grátis), mas soluções <$ 10,00 também estariam bem.

Sam Axe
fonte
Eu também gostaria de manter esta lista com algo legível quando eu tiver que escolher apenas entre quatro redes sem fio diferentes e não vinte.
dan
Obrigado pela colisão, @GrahamPerrin. Eu ainda estou procurando uma resposta para este.
Sam Ax
Contextos para a recompensa atual incluem forums.macrumors.com/showthread.php?p=20841471#post20841471
Graham Perrin
Atualizei minha resposta
markhunte 17/03/2015
Veja meu comentário sobre a senha nos comentários da minha resposta. Ainda estou tentando encontrar uma
solução alternativa

Respostas:

4

Você pode colocar algo como este Applescript no menu Applescript e usá-lo para listar suas redes preferidas, escolher e se conectar a ele.

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)

insira a descrição da imagem aqui

(Não posso dizer que isso é perfeito, já que às vezes nem sempre quero conectar, mas não tenho certeza se esse é apenas o meu roteador / wifi)


Atualizar.

Usando a mesma idéia acima, você também pode criar uma lista proibida de ssids inválidos.

E filtrá-los.

O comando principal é usar um comando de estrutura de aeroporto em vez do comando networksevice, portanto, é um pouco mais lento. Mas procura redes disponíveis, e não apenas a sua preferida.

    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)
markhunte
fonte
1
Parece uma solução perfeitamente razoável. Vou tentar amanhã e, se funcionar, aceito sua resposta.
Sam Ax
Eu tentei em 10.9.5 e só funciona limitado. Ele verifica e exibe a lista de todas as redes, pedindo para selecionar uma. Então vem com ele não pode se conectar? à minha rede. "Falha ao ingressar no foguete de rede. Erro: -3905 Erro de tempo limite" e permanece desconectado até eu interromper o script.
Ruskes 20/03
@buscar Semelhante ao que eu estava recebendo no 10.10.x, mas consegui algumas conexões. o código é padrão para fazer a conexão. Mas vou olhar para ver se eu perdi uma opção
markhunte
@Buscar encontrou o problema. Se você se conectar a um wifi que não possui uma senha, não há problema. Mas se for necessário adicionar a senha ao final do comando `networksetup -setairportnetwork en0 'myNet' 'minha senha' 'Ainda não tenho uma maneira fácil de obter a senha sem precisar digitar sua senha de administrador.
markhunte
0

Não tenho certeza se você pode filtrar diretamente SSIDs dessa lista. No entanto, existem algumas maneiras de ocultar o ícone Wifi da barra.

Clique no ícone -> "Abrir preferências de rede" -> Parte inferior dessa janela é uma caixa de seleção. "Mostrar status do Wifi na barra de menus".

A outra opção seria usar um aplicativo como o Bartender. Custa dinheiro, mas permite ocultar / reorganizar a barra superior.

Se você está apenas tentando esconder o diálogo dos seus filhos, essas duas opções devem ser boas o suficiente.

cstrat
fonte
1
Eu realmente aprecio as sugestões! No entanto, não quero remover o ícone inteiro, apenas os itens de menu incorretos. O menu do ícone é muito útil para mim .. mas estou cansado de ver "GO F *** YOURSELF!" toda vez que eu clico nele.
Sam Axe
2
Porque meu trabalho geralmente exige que eu troque de rede.
Sam Axe
0

Talvez a melhor opção seja criar um Automator / AppleScript para ingressar em cada uma das redes pelas quais você precisa pular.

Você pode criar seu próprio Aplicativo ou Serviço para as redes que utiliza com freqüência e usar o painel Preferências do Sistema para quando estiver em um local diferente e precisar ingressar no Wifi.

Dependendo da sua capacidade de script, você pode usar um fluxo de trabalho / script com alguma lógica para alternar entre redes com base na qual você está atualmente conectado.

willWorkForCookies
fonte
Essa resposta pode ser boa para uma pergunta diferente, mas não responde a essência dessa pergunta. A essência aqui é o desejo de ocultar ou remover o nome de uma rede .
Graham Perrin
1
Eu entendo sua posição, mas discordo; Penso que o objetivo do solicitante é evitar ver os SSIDs que são ofensivos. Embora isso possa não acontecer 100% do tempo, pode reduzir significativamente o problema.
WillWorkForCookies