bluetoothctl:列出已连接的设备?

bluetoothctl:列出已连接的设备?

我正在尝试通过 Kubuntu 上的命令行获取已连接的蓝牙设备列表。

当我启动时bluetoothctl,它默认为最新连接的设备,我需要断开它才能显示另一个。

有没有办法列出已连接的蓝牙设备?

答案1

这是一个鱼壳单行(见下文狂欢

bluetoothctl devices | cut -f2 -d' ' | while read uuid; bluetoothctl info $uuid; end|grep -e "Device\|Connected\|Name"

狂欢单行:

bluetoothctl devices | cut -f2 -d' ' | while read uuid; do bluetoothctl info $uuid; done|grep -e "Device\|Connected\|Name"

答案2

您可以使用以下方式列出已配对的设备bluetoothctl paired-devices

您可以从此列表中获取每个设备的信息,并根据bluetoothctl info 信息了解设备已连接状态。

因此在每个设备上循环 grep,Connected: yes如果是则显示名称:

bluetoothctl paired-devices | cut -f2 -d' '|
while read -r uuid
do
    info=`bluetoothctl info $uuid`
    if echo "$info" | grep -q "Connected: yes"; then
       echo "$info" | grep "Name"
    fi
done

答案3

从 bluez/bluetoothctl 5.65 ( bluetoothctl --version) 开始,我们可以使用bluetoothctl devices Connected(大写C)列出已连接的蓝牙设备。例如:

$ bluetoothctl devices Connected
Device AA:BB:CC:DD:EE:FF MY-DEVICE-NAME

如果您关心配对设备,请使用bluetoothctl devices Pairedbluez/bluetoothctl 版本 >= 5.65,或bluetoothctl paired-devicesbluez/bluetoothctl < 5.65。

答案4

跑完步后sudo bluetoothctl...

您可以键入paired-devices以查看已配对设备的列表
list查看当前连接的控制器列表

您还可以键入info来查看有关每个设备的信息。

此处的每个命令都支持 MAC 地址的制表符补全。

相关内容