1
1
Files
zyxel-vmg8825_b50b-cfw/package/base-files-qca/files/sbin/ap_scan
T
2026-04-17 18:33:03 +02:00

88 lines
1.3 KiB
Plaintext
Executable File

iface=$1
channel=""
ess=""
bss=""
wps=""
sec=""
encryption=""
mgmt=""
mode=""
noise=""
rssi=""
signal=""
print=0
set_address=0
set_signal=0
set_noise=0
echo $(iwlist $iface scanning | grep Cell |wc -l)
ret=$(iwlist $iface scanning last)
for line in $ret; do
if [ $set_address -eq "1" ]; then
bss="$line"
set_address=0
continue
fi
if [ $set_signal -eq "1" ]; then
signal=${line:6}
set_signal=0
continue
fi
if [ $set_noise -eq "1" ]; then
noise=${line:6}
set_noise=0
continue
fi
case "$line" in
Cell)
if [ $print -eq "1" ]; then
rssi=$((signal-noise))
if [ -z $ess ]; then
ess="-"
fi
echo "$channel,$ess,$bss,$wps,$sec,$encryption,$mgmt,$mode,$noise,$rssi"
unset channel ess bss wps sec encryption mgmt mode noise rssi
else
print=1
fi
;;
Address*)
set_address=1
;;
ESSID*)
ess=${line:6}
;;
Signal)
set_signal=1
;;
Noise)
set_noise=1
;;
Frequency*)
channel=${line:10}
channel=${channel//.}
while [ ${#channel} -lt 4 ];
do
channel=$channel"0"
done
;;
*)
wps="-"
sec="-"
encryption="-"
mgmt="-"
mode="-"
;;
esac
done
if [ -z $ess ]; then
ess="-"
fi
rssi=$((signal-noise))
echo "$channel,$ess,$bss,$wps,$sec,$encryption,$mgmt,$mode,$noise,$rssi"