我正在实现 iwlist python 版本。这是 iwlist 在 Linux 操作系统上如何工作的描述 iwlist() 命令如何扫描无线网络?它的作用是扫描所有附近的 wifi 接入点,显示它们的 ESSID、MAC 地址、信号/噪声级别等列表。
iwlist 使用 ioctl SIOCSIWSCAN 来触发扫描。然后它使用 SIOCGIWSCAN 来获取扫描结果。出于安全原因,我必须在没有 root 访问权限的情况下实现这一点。但这两个命令都必须以 root 身份运行。python 等效的 iwlist 已经实现http://pythonwifi.wikispot.org/但是它使用相同的 ioctl。
我想知道是否可以在没有 sudo 的情况下解决这个问题。或者,除了 ioctl,如果还有其他方法可以实现非 sudo iwlist。