Introdução ao Location Changer
Este é um script muito promissor para alterar os locais de rede com base no SSID de Wi-Fi:
É criado por Anton Eprev . Você pode ver o código e documentação mais detalhada no GitHub:
Instalação
Instala via linha de comando:
$ curl -L https://github.com/eprev/locationchanger/raw/master/locationchanger.sh | bash
Ele pedirá uma senha de root para instalar o diretório locationchanger
to /usr/local/bin
.
É isso aí!
Depois disso, se houver um local de rede cujo nome é idêntico ao nome (SSID) da rede Wi-Fi atual , ele alternará automaticamente para o local da rede. Caso contrário, ele mudará para o local Automático . (BTW, se não houver nenhum local chamado Automatic , ele reclama em logs e saídas).
Script específico do local
Se você quiser executar um script toda vez que se conectar a uma rede WiFi específica, coloque esses scripts em ~/.locations
e nomeie-os após redes WiFi, por exemplo, ~/.locations/Corp Wi-Fi
:
#!/usr/bin/env bash
# Require password immediately after sleep or screen saver begins
osascript -e 'tell application "System Events" to set require password to wake of security preferences to true'
E talvez você queira criar ~/.locations/Automatic
que redefinirá essas alterações em outros locais:
#!/usr/bin/env bash
# Don’t require password immediately after sleep or screen saver begins
osascript -e 'tell application "System Events" to set require password to wake of security preferences to false'
Certifique-se de lançar bits de execução nos scripts ( chmod +x
).
Alias de localização
Você pode compartilhar um local de rede entre várias redes sem fio. Por exemplo, se você tem um roteador sem fio que transmite em bandas de 2,4 e 5GHz ao mesmo tempo, é possível criar um arquivo de configuração ~/.locations/locations.conf
e colocar pares simples de valores-chave em:
Home_WiFi_5GHz=Home_WiFi
Aqui, as chaves são nomes de redes Wi-Fi e os valores são locais de rede correspondentes . Junte-se a eles com sinais de igualdade nus ( =
, sem espaços). No exemplo acima, se a rede WiFi Home_WiFi_5GHz estiver conectada, ela mudará para o local de rede Home_WiFi .
Observe que os alias de localização têm prioridade sobre a regra de nome igual. No exemplo acima, somente o script ~/.locations/Home_WiFi
será executado quando você se conectar à rede Wi-Fi Home_WiFi_5GHz .
Com os alias de localização, você nem precisa criar locais de rede extras para corresponder nomes de redes WiFi.
Solução de problemas
Você pode ver registros extensos com o seguinte comando:
$ tail -f ~/Library/Logs/LocationChanger.log
Exemplo de saída:
[2017-10-13 11:35] Connected to 'Unknown WiFi'
[2017-10-13 11:35] Location 'Unknown WiFi' was not found. Will default to 'Automatic'
[2017-10-13 11:35] Changing the location to 'Automatic'
CurrentSet updated to 6B593A12-C51B-3FF1-DE1D-87310F232147 (Automatic)
[2017-10-13 11:37] Connected to 'Home_WiFi_5GHz'
[2017-10-13 11:37] Will switch the location to 'Home_WiFi' (configuration file)
[2017-10-13 11:37] Changing the location to 'Home_WiFi'
CurrentSet updated to 7900D1E6-3820-50C6-882E-4F5K2BEF32ED (Home_WiFi)
Desinstalação
Primeiro, descarregue o agente de lançamento:
launchctl unload ~/Library/LaunchAgents/LocationChanger.plist
Em seguida, remova o arquivo binário, plist e log:
rm ~/Library/LaunchAgents/LocationChanger.plist
rm ~/Library/Logs/LocationChanger.log
sudo rm /usr/local/bin/locationchanger
Você também pode remover arquivos de configuração e scripts específicos do local em ~/.locations
:
rm -rf ~/.locations