Am Freitag, den 06. September 2002 um 10:51:24 Uhr (+0200) schrieb Frank Sommer:
man mag mich fuer krank halten, aber ich habe die Aufgabe (aus sportlichem Ehrgeiz) als Einzeiler fuer die bash geschrieben:
j=9;for i in `cat dhcp.conf`;do k=`expr $j / 9`;l=`expr $j % 9`;if [ $l == 1 ];then x[k]=$i;fi;if [ $l == 5 ];then y[k]=`echo $i|cut -d';' -f1`;fi;if [ $l == 7 ];then z[k]=`echo $i|cut -d';' -f1`;fi;((j++));done;for ((i=1;i<=$k;i++));do echo ${x[i]},${y[i]},${z[i]};done
sieht ja reichlich umständlich aus.
Warum macht ihr es nicht so (ist schliesslich auch ein Einzeiler):
gawk '/host/ {str1=$2} /ethernet/ {str2=$3} /fixed-adress/ {str3=$2; printf "%s,%s,%s\n", str1, gensub(/;/,"",1,str2), gensub(/;/,"",1,str3);}' dhcp.conf
Das ist dann wenigstens halbwegs lesbar.
Mir scheint aber das Wort "fixed-adress" komisch. Wird es nicht "fixed address" geschrieben?
-- Orm