#!/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) printf "%s" ${_count:+\ ${_sep}\ } printf "%3.3s" ${_sig} [[ ${#@} -gt 1 ]] && printf "%s" "%" _count=1 ;; sid) printf "%s" ${_count:+\ ${_sep}\ } printf "%s" ${_sid} _count=1 ;; ip) printf "%s" ${_count:+\ ${_sep}\ } printf "%s" ${_ip} _count=1 ;; esac done }