Antworten:
Dieses Skript schaltet den Status um und zeigt eine Meldung an, um zu bestätigen, was getan wurde.
#!/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
Ändern Sie diese wie folgt, damit die Zenity-Eingabeaufforderungen ausgeblendet werden:
zenity --info --text "Enabled wireless" --timeout="5"
zenity --info --text "Disabled wireless" --timeout="5"
Oder machen Sie Benachrichtigungen, die in der Ecke Ihres Bildschirms angezeigt werden.
sudo apt-get install libnotify-bin
Ersetzen Sie die Zenitlinien durch
notify-send -i network-wireless-full "Wireless enabled" "Your wireless adaptor has been enabled."
notify-send -i network-wireless-disconnected "Wireless disabled" "Your wireless adaptor has been disabled."
--timeout="n"
Option für Zenity.
Ich habe eine Weile nach einer Lösung für mich gesucht und eine Menge Tipps und Tricks verwendet. Ich habe endlich die Lösung gefunden, die für mich funktioniert, und mich entschieden, einen Einsteiger-Rundgang zu erstellen. Denken Sie daran, dies gilt auch für diejenigen, die weniger in der Lage sind, unter Linux zu programmieren als viele von Ihnen, wie ich selbst;
Klicken Sie auf das Startsymbol in der oberen linken Leiste (Dash Home), geben Sie "gedit" ein und klicken Sie auf die Eingabetaste.
Sie erstellen jetzt das Skript, mit dem das WLAN umgeschaltet wird.
Ich habe die Netzwerkmanagerverknüpfung verwendet. nmcli nm wifi, um den WLAN-Status zu bestimmen und ihn auch zu steuern. Ich habe das Benachrichtigungsskript aus dem obigen Beispiel verwendet, um den WLAN-Status anzuzeigen. Hier ist mein Drehbuch;
#!/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
Kopieren Sie diese Datei in den soeben geöffneten Editor und speichern Sie sie unter einem beliebigen Dateinamen (meiner war wifitoggle).
Der nächste Schritt bestand darin, die Datei ausführbar zu machen (klicken Sie im Basisordner mit der rechten Maustaste auf Ihre Datei, Eigenschaften, Registerkarte "Berechtigungen" und markieren Sie "Als ausführbar ausführen").
Legen Sie dann eine Kopie in das Verzeichnis Dateisystem / usr / bin (öffnen Sie das Terminal, geben Sie sudo nautilus ein. Navigieren Sie zu Dateisystem, dann usr und öffnen Sie bin. Einfügen y).
Schließlich gehen Sie zu Systemeinstellungen -> Tastatur -> Registerkarte Verknüpfungen; drücke den kleinen + Knopf darunter, gib den Namen für deinen Toggle ein und den Dateinamen für das Skript, das du gegeben hast (in meinem Fall wifitoggle). Klicken Sie auf "Übernehmen" und dann auf den Text "Deaktiviert" rechts daneben. Drücken Sie dann Ihre Tastenkombinationen. ERLEDIGT!
Ja, das kannst du mit cnetworkmanager . Es befindet sich im Repository. Installieren Sie es und erstellen Sie einen Starter mit dem Befehl, cnetworkmanager --wifi=no
wenn Sie die drahtlose Verbindung deaktivieren möchten, und dem Befehl, cnetworkmanager --wifi=yes
wenn Sie die drahtlose Verbindung aktivieren möchten.
So etwas wie: sudo ifconfig <wlan0> down
odersudo ifconfig <wlan0> up
?
Hier ist mein Drehbuch:
#!/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
Zur Info: rfkill als David und misterben vorgeschlagen ist besser , falls Sie sich mit Netzwerk-Manager .
ifconfig deaktiviert die Schnittstelle, Network-Manager aktiviert sie jedoch automatisch wieder.
Ein weiterer Quickie, den ich benutze, ist das Entfernen des wl-Kernel-Moduls.
Aus:
rmmod wl
Auf:
modprobe wl