В соответствии с примером 12 здесь я должен иметь возможность использовать
dbus-send --system --print-reply --dest=org.freedesktop.NetworkManager /org/freedesktop/NetworkManager/Devices/4 org.freedesktop.NetworkManager.Device.Wireless.GetAllAccessPoints
для обнаружения всех доступных точек беспроводного доступа, поскольку /org/freedesktop/NetworkManager/Devices/4
- это мой беспроводной адаптер. Однако кажется, что он возвращает результаты, отличные от эквивалента командной строки
nmcli device wifi list
, который возвращает гораздо больше идентификаторов SSID. Экспериментируя с вышесказанным на работе, я мог получить только один SSID через dbus-send. Дома, когда я впервые выполнил команду dbus-send
, она вернула массив из четырех точек доступа, который совпадает с числом, возвращаемым nmcli
. Я снова выполнил ту же команду dbus-send
, и на этот раз она выдала список только с одной точкой доступа, как на работе.
На следующий день дома я несколько раз попробовал команду dbus-send
, и она выгляделатолько одна точка доступа. Затем я снова запустил команду nmcli
, и она перечислила пять точек доступа. После этого команда dbus-send
также перечислила пять точек доступа. Кажется, что команда nmcli
каким-то образом идет дальше, чем команда dbus-send
, для обнаружения точек доступа, но как только она это сделала, команда dbus-send
также может найти точки доступа. Однако на деле это не так: команда nmcli
всегда обнаруживает 12 или более точек доступа, а команда dbus-send
обнаруживает только одну.
У меня определенно есть только один беспроводной адаптер: списки ifconfig -a
: enp0s25, lo, sit0 и wlp3s0.
Что означает команда nmcli
, а команда dbus-send
- нет?