Je cherche un moyen de me déconnecter de mon réseau WIFI actuel via CLI. Il y a un moyen de faire cela, mais c'est une manière graphique.
Des idées comment accomplir cela?
Merci!
Remarque: je ne souhaite pas désactiver le Wi-Fi, car Airdrop doit fonctionner pour pouvoir le déconnecter du réseau existant.
EDIT: Pourquoi est-ce que je veux ça?
Au travail, nous connectons les MBP aux écrans avec connexion Ethernet connectée. Nous utilisons également beaucoup la fonctionnalité AirDrop. L’objectif est d’écrire un script qui se déconnecte automatiquement des réseaux WIFI lorsque le câble Ethernet est branché, de sorte que nous puissions toujours utiliser d’autres fonctionnalités WIFI comme le déverrouillage AirDrop & Apple Watch.
macos
network
wifi
command-line
Panagiotis Toni Bobolakis
la source
la source
Réponses:
Utilisez
networksetup
.Il existe plusieurs façons de se déconnecter d'un réseau Wi-Fi via un terminal:
Désactiver le service Wi-Fi. Cela nécessitera des privilèges root. La radio restera allumée mais ne se connectera à rien.
$ sudo networksetup -setnetworkserviceenabled Wi-Fi off
Coupez l'alimentation de l' aéroport (ce qui est comme cliquer sur le (GUI) icône Wi-Fi et vous n'avez pas besoin sélectionner « désactiver le Wi-Fi ».
sudo
Et vous devez savoir quelle interface (en0
,en1
, etc.) est l' adaptateur aéroport. Si vous n'essayez pas le service et que macOS tentera de deviner lequel il s'agit.$ networksetup -setairportpower Wi-Fi off
Dans le cas spécifique où vous ne voulez pas de jointure automatique, configurez simplement le réseau pour ne pas rejoindre la jointure automatique, puis basculez l'état du réseau à l'aide de
networksetup
.Si vous souhaitez simplement vous déconnecter d'un réseau WiFi, désactivez l'adaptateur:
$ sudo networksetup -setnetworkserviceenabled Wi-Fi off && sleep 15 && sudo networksetup -setnetworkserviceenabled Wi-Fi on
(Vous pouvez émettre la commande sans,
sudo
mais vous obtiendrez une fenêtre vous demandant un mot de passe pour chaquenetworksetup
invocation)la source
Vous pouvez utiliser celui-ci (trouvé sur Internet et essayé moi-même):
Au lieu de "DEVICE_NAME", utilisez votre interface (ig: en0)
la source