É possível configurar um atalho para ativar / desativar o wifi?

12

É possível configurar um atalho para ativar / desativar o Wi-Fi?

    
por NES 16.12.2010 / 13:33

6 respostas

14

Este script alternará o status e mostrará uma mensagem para confirmar o que foi feito.

#!/bin/bash

if [ $(rfkill list wifi | grep "Soft blocked: yes" | wc -l) -gt 0 ] ; then
    rfkill unblock wifi
    zenity --info --text "Enabled wireless"
else
    rfkill block wifi
    zenity --info --text "Disabled wireless"
fi

Para que os prompts do zenity desapareçam, altere-os da seguinte forma:

zenity --info --text "Enabled wireless" --timeout="5"
zenity --info --text "Disabled wireless" --timeout="5"

Ou faça notificações que aparecem no canto da tela.

sudoapt-getinstalllibnotify-bin

Substituaaslinhasdezenitypor

notify-send-inetwork-wireless-full"Wireless enabled" "Your wireless adaptor has been enabled."
notify-send -i network-wireless-disconnected "Wireless disabled" "Your wireless adaptor has been disabled."
    
por misterben 16.12.2010 / 14:33
4

Eu tenho procurado uma solução para isso por um tempo, e usei muitas dicas e truques para todo o mundo. Eu finalmente encontrei a solução que funciona para mim e decidi criar um walk-through para iniciantes. Tenha comigo, isso também é para aqueles menos capazes de programar em linux do que muitos de vocês, como eu;

Clique no ícone do iniciador no canto superior esquerdo da barra deslizante (Dash Home), digite 'gedit' e clique em enter.

Você agora criará o script que alternará o Wi-Fi;

Eu usei o atalho do gerenciador de rede; nmcli nm wifi, para determinar o estado de wifi, e também para controlá-lo. Eu usei o script de notificação dado no exemplo acima para exibir o estado do wifi. Aqui está meu script;

#!/bin/bash

if [ $(nmcli nm wifi | grep "disabled" | wc -l) -eq 1 ] ; then
    nmcli nm wifi on
    notify-send -i network-wireless-full "Wireless enabled" "Your   wireless adaptor has been enabled."
else
    nmcli nm wifi off
    notify-send -i network-wireless-disconnected "Wireless disabled"    "Your wireless adaptor has been disabled."
fi

Copie e cole no editor que acabou de abrir e salve-o como qualquer nome de arquivo que achar apropriado (o meu foi wifitoggle).

O próximo passo foi tornar o arquivo executável (na Pasta Pessoal; clique com o botão direito do mouse em seu arquivo, propriedades, guia permissões, marca de seleção em 'Executar como executável').

Em seguida, coloque uma cópia no diretório / usr / bin do sistema de arquivos (terminal aberto, digite sudo nautilus. Navegue até Sistema de arquivos, depois usr e abra bin. Cole y).

Por fim, acesse as configurações do sistema - > Teclado - > Guia de atalhos; pressione o pequeno botão + embaixo, preencha o nome para o seu toggle e preencha o nome do arquivo para o script que você deu (no meu caso wifitoggle). Clique em aplicar e clique no texto "diabrado" à direita e pressione as teclas de atalho. FEITO!

    
por Johno 17.05.2012 / 12:25
3

Para desativar seu adaptador de Wi-Fi, use rfkill block wifi , para permitir que use rfkill unblock wifi

Em vez de Wi-Fi, você pode usar uma das seguintes palavras-chave: all wifi wlan bluetooth uwb ultrawideband wimax wwan gps fm

    
por david 16.12.2010 / 14:06
1

Sim, você pode usar o cnetworkmanager . Ele está no repositório, então instale-o e crie um lançador com o comando cnetworkmanager --wifi=no se você quiser desabilitar o wireless e o comando cnetworkmanager --wifi=yes se você quiser habilitar o wireless.

    
por Shakipu 16.12.2010 / 13:53
1

Algo como: sudo ifconfig <wlan0> down ou sudo ifconfig <wlan0> up ?

Aqui está meu script:

#!/bin/bash
echo "Checking wireless iface status...."

if iwconfig wlan0 | grep Quality
then 
echo "Wi/Fi is being disabled...."
    if rfkill block wifi
    then
    echo "Wi/Fi is now OFF!"
    fi
else 
echo "Wi/Fi is being enabled...."
    if rfkill unblock wifi
    then
    echo "Wi/Fi is now ON!"
    fi
fi

FYI: rfkill como david e misterben sugerido é melhor caso você esteja usando Network-Manager

O ifconfig desativará a interface, mas o Network-Manager irá reativá-la automaticamente.

    
por Pavlos G. 16.12.2010 / 13:36
0

Outra rapidinha que eu uso é remover o módulo wl do kernel.

Desligado:

% bl0ck_qu0te%

Em:

% bl0ck_qu0te%     
por Pete Ashdown 16.12.2010 / 16:34