Comment masquer ou supprimer les noms de réseau inutiles de l'icône de la barre de menus wifi

17

J'ai des voisins odieux qui trouvent amusant d'utiliser des mots offensants pour leurs SSID.

Je voudrais supprimer ces SSID, au minimum, de l'icône de la barre de menus wifi. Si c'est plus facile, les cacher / les supprimer complètement du système d'exploitation (icône de la barre de menu et préférences système) serait acceptable.

Je suis un débutant sous OS X, donc je ne sais même pas par où commencer.

Je préfère les solutions intégrées (lire: gratuit), mais des solutions <10,00 $ seraient également acceptables.

Sam Axe
la source
Je voudrais également garder cette liste à quelque chose de lisible quand je n'ai qu'à choisir parmi 4 réseaux sans fil différents et pas vingt.
dan
Merci pour la bosse, @GrahamPerrin. Je cherche toujours une réponse à celle-ci.
Sam Axe
Les contextes pour la prime actuelle incluent forums.macrumors.com/showthread.php?p=20841471#post20841471
Graham Perrin
J'ai mis à jour ma réponse
markhunte
Voir mon commentaire sur le mot de passe dans mes commentaires de réponse. J'essaie toujours de trouver un travail
markhunte

Réponses:

4

Vous pouvez placer quelque chose comme cet Applescript dans votre menu Applescript et l'utiliser pour répertorier vos réseaux préférés, choisir et vous y connecter.

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)

entrez la description de l'image ici

(Je ne peux pas dire que c'est parfait car je l'ai trouvé parfois, il ne veut pas toujours se connecter mais je ne sais pas si c'est juste mon routeur / wifi)


Mise à jour.

En utilisant la même idée ci-dessus, vous pouvez également créer une liste interdite de ssids défectueux.

Et filtrez-les.

La commande principale utilise une commande de framework d' aéroport au lieu de la commande networksevice est donc un peu plus lente. Mais recherche les réseaux disponibles au lieu de simplement vous préférez.

    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
la source
1
Cela semble être une solution parfaitement raisonnable. Je vais l'essayer demain et, si cela fonctionne, j'accepte votre réponse.
Sam Axe
Je l'ai essayé dans 10.9.5 et cela ne fonctionne que de manière limitée. Il scanne et affiche la liste de tous les réseaux, me demandant d'en sélectionner un. Ensuite, il arrive avec il ne peut pas se connecter? à mon réseau. "Impossible de rejoindre la fusée réseau. Erreur: -3905 Erreur de délai d'attente", puis il reste déconnecté jusqu'à ce que j'arrête le script.
Ruskes
@buscar Similaire à ce que j'obtenais sur 10.10.x mais j'ai eu quelques connexions. le code est un code standard pour effectuer la connexion. Mais je vais voir si j'ai raté une option
markhunte
@Buscar a trouvé le problème. Si vous vous connectez à un wifi qui n'a pas de mot de passe, pas de problème. Mais si c'est le cas, vous devez ajouter le mot de passe à la fin de la commande `networksetup -setairportnetwork en0 'myNet' 'mon mot de passe' 'Je n'ai pas encore de moyen facile d'obtenir le mot de passe sans avoir à taper votre mot de passe administrateur.
markhunte
0

Je ne sais pas si vous pouvez filtrer directement les SSID de cette liste. Cependant, il existe plusieurs façons de masquer l'icône Wifi de la barre.

Cliquez sur l'icône -> "Ouvrir les préférences réseau" -> Le bas de cette fenêtre est une case à cocher. "Afficher l'état Wifi dans la barre de menus".

L'autre option serait d'utiliser une application comme Bartender. Cela coûte de l'argent, mais vous permettra de masquer / réorganiser la barre supérieure.

Si vous essayez simplement de cacher la boîte de dialogue à vos enfants, ces deux options devraient être suffisantes.

cstrat
la source
1
J'apprécie vraiment les suggestions! Cependant, je ne veux pas supprimer toute l'icône, juste les éléments de menu incriminés. Le menu d'icônes est très utile pour moi .. mais je suis fatigué de voir "GO F *** YOURSELF!" chaque fois que je clique dessus.
Sam Axe
2
Parce que mon travail m'oblige souvent à changer de réseau.
Sam Axe
0

La meilleure option serait peut-être de créer un Automator / AppleScript pour rejoindre chacun des réseaux entre lesquels vous devez sauter.

Vous pouvez créer votre propre application ou service pour les réseaux que vous utilisez souvent et utiliser votre volet Préférences système lorsque vous vous trouvez dans un emplacement différent et devez rejoindre le Wifi.

Selon votre capacité de script, vous pouvez utiliser un Workflow / Script avec une logique pour basculer entre les réseaux en fonction de celui auquel vous êtes actuellement connecté.

willWorkForCookies
la source
Cette réponse pourrait être bonne pour une question différente, mais elle ne répond pas à l'essence de cette question. L'essence ici est un souhait de cacher ou de supprimer le nom d'un réseau .
Graham Perrin
1
Je comprends votre position, mais je ne suis pas d'accord; Je pense que le but du demandeur est d'éviter de voir les SSID qui sont offensants. Bien que cela ne puisse pas accomplir cela 100% du temps, cela peut réduire considérablement le problème.
willWorkForCookies