Answers:
该脚本将切换状态,并显示一条消息以确认已完成。
#!/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
要使禅宗提示消失,请像这样更改它们:
zenity --info --text "Enabled wireless" --timeout="5"
zenity --info --text "Disabled wireless" --timeout="5"
或发出显示在屏幕角落的通知。
sudo apt-get install libnotify-bin
将zenity线替换为
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"
zenity 有一个未记录的选项。
一段时间以来,我一直在寻找自己的解决方案,并且使用了许多技巧和窍门。我终于找到了适合我的解决方案,并决定创建一个新手演练。忍受我,这也适用于那些像我这样的人,而不像你们中许多人那样在linux中编程的能力。
单击左上方滑出栏上的启动器图标(Dash Home),键入“ gedit”,然后单击Enter。
现在,您将创建将切换wifi的脚本。
我使用了网络管理器快捷方式;nmcli nm wifi,确定并控制wifi状态。我使用了上面示例中给出的通知脚本来显示wifi状态。这是我的剧本;
#!/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
将其复制并粘贴到刚打开的编辑器中,然后将其保存为您认为合适的任何文件名(我的名字是wifitoggle)。
下一步是使文件可执行(在主文件夹中;右键单击文件,属性,权限选项卡,在“以可执行文件身份运行”上打勾)。
然后将副本放置在文件系统/ usr / bin目录中(打开终端,键入sudo nautilus。导航到“文件系统”,然后是usr,然后打开bin。粘贴y)。
最后,转到系统设置->键盘->快捷方式标签;按下下方的小+按钮,为您的切换输入名称,并为您提供的脚本填写文件名(在我的情况下为wifitoggle)。单击应用,然后单击其右侧的“已禁用”文本,然后按您的热键。完成!
是的,您可以使用cnetworkmanager。它在存储库中,因此cnetworkmanager --wifi=no
如果要禁用无线,请使用命令安装它并创建启动器,cnetworkmanager --wifi=yes
如果要启用无线,请使用命令创建启动器。
像:sudo ifconfig <wlan0> down
还是sudo ifconfig <wlan0> up
?
这是我的脚本:
#!/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
仅供参考:如果您使用的是Network-Manager,那么大卫和槲寄生建议的rfkill更好。
ifconfig将禁用该接口,但是Network-Manager将自动重新启用它。