#!/bin/sh _sep=":" ifconfig wlan | { while read _line; do case ${_line} in status*) [[ ${_line} != "status: active" ]] && exit ;; ieee80211:*) _sid=${_line%% chan*} _sid=${_sid##*nwid } _sid=${_sid##*join } _sig=${_line%%\%*} _sig=${_sig##* } ;; inet\ *) _ip=${_line##*inet } _ip=${_ip%% *} ;; esac done for _arg in $@; do case ${_arg} in sig) set -A WIFI ${WIFI[*]} ${WIFI:+${_sep}} ${_sig} ;; sid) set -A WIFI ${WIFI[*]} ${WIFI:+${_sep}} ${_sid} ;; ip) set -A WIFI ${WIFI[*]} ${WIFI:+${_sep}} ${_ip} ;; esac done print ${WIFI[*]} }