有没有办法设置热键来通过网线切换连接:
此外,如果我在命令行中有一个可以执行此操作的命令或一段可以执行此操作的 C++ 代码,我可以为其设置一个热键。
答案1
网络管理器的控制
可以从命令行控制 NetworkManger:
人nmcli:
NAME
nmcli – command‐line tool for controlling NetworkManager
SYNOPSIS
nmcli [ OPTIONS ] OBJECT { COMMAND | help }
...
网络上的手册页:http://manpages.ubuntu.com/manpages/saucy/man1/nmcli.1.html
使用 dbus:
- 通过 DBus 配置网络管理器:如何设置 ad hoc 模式
- http://cheesehead-techblog.blogspot.fi/2012/09/dbus-tutorial-fun-with-network-manager.html
例如-在这里工作:
断开当前网络连接并保持断开状态:
qdbus --system --literal org.freedesktop.NetworkManager /org/freedesktop/NetworkManager/Devices/0 org.freedesktop.NetworkManager.Device.Disconnect
使用 UUID 连接网络:
1)读取UUID:
nmcli -p c
这里的 UUID 是 81540c01-2377-4d79-9763-d0f3104c81f3
2)激活连接:
nmcli c up uuid 81540c01-2377-4d79-9763-d0f3104c81f3
热键
添加快捷方式/热键的一种方法是使用 KDE 菜单编辑器。
可以将该命令添加到 KDE 菜单,并使用快捷方式来运行该命令。
可以在以下位置找到 KDE 文档:K-Menu > 应用程序 > 帮助...
网络上的 KDE 菜单编辑器手册:http://docs.kde.org/development/en/kde-workspace/kmenuedit/index.html
答案2
谢谢用户26687这些是我用于重新连接的命令:
$ nmcli -p c
$ nmcli c up uuid 6e6c6430-ffae-4dc3-aeb8-60a89fa63796
第一个获取 uuid 的。如果有一个连接,则使用
nmcli c up uuid "$(nmcli -t -f uuid c)"
反而。
以下是我用来断开连接的方法:
$ nmcli dev status
$ nmcli dev disconnect iface eth1
对我来说,qdbus
由于升级到 Qt5,它毫无用处。为了赋予它切换特性,即设置一个热键用于启用和禁用,可能 C++ 代码适合组合和自动化这些命令(对我来说很耗时)。两个热键可能对我来说更好。我使用这种方法为命令设置热键:
https://askubuntu.com/a/393343/126106
但我还是担心uuid
(会出现反复无常的情况)。