Auf Arbeit muss ich eine kleine GUI, die mit dialog geschrieben ist, anpassen, über welche Kunden ggf. ein paar kleine Einstellungen tätigen können. Im Fall Netzwerkinterface konfigurieren, kam mir heute in den Sinn, dass es ja durchaus sein kann, das es mehrere Interface, gleichen Typs, also z.B. 2x WLAN, geben kann und ich das auch gern berücksichtigen würde. Wenn also mehr als zwei Interface auftauchen, soll ein entsprechendes Menü in dialog generiert werden, was ich wie folgt gelöst hab:
TPATH=$(mktemp -d) aintf=$(cat /proc/net/dev | grep ^\s*wl.*:.*$ | awk -F":" '{printf"%s ", $1}') if [ "$(echo $aintf | wc -w)" -gt "1" ]; then c=1 for i in $aintf; do list_opt=("${list_opt[@]}" "$i" "Interface$c") c=$[c+1] done diacmd=(dialog --menu "Interface" 15 60 10) cmd=`echo "${diacmd[@]}" "${list_opt[@]}"` $cmd 2> $TPATH/dialog.tmp interf=`cat $TPATH/dialog.tmp` else interf=${aintf[0]} fi