Hallo, Am Die, 26 Jun 2007, Daniel Spannbauer schrieb: [.. rpm -qa generierte Paketliste ..]
Dadurch würde ich gerne die Liste dem AWK zu fressen geben, die letzten 2 Felder wegschneiden und in ein andere File pipen lassen. Wie ich an die Anzahl der zu druckenden Felder komme weiß ich, ein NF-2 ist das Mittel zum Ziel. Nur wie bringe ich AWK jetzt bei das er das davor drucken soll?
_Was_ davor drucken?
Weiß jemand wie ich das im AWK umsetzen kann? Oder kann das sed?
rpm -qa --queryformat 'was davor %{NAME} und danach\n' ist einfacher ;) Aber da nach awk gefragt wurde, z.B. so: rpm -qa | awk ' BEGIN { FS="-"; OFS="-"; } { $(NF-1)=""; ## vorletztes Feld auf "" setzen $NF=""; ## letztes Feld auf "" setzen sub("--$",""); ## letzte 2 Feldtrenner löschen print "was davor " $0 " und danach"; ## Ausgabe }' Man könnte auch über die Felder iterieren: rpm -qa | awk -F'-' '{ printf "was davor "; for( i=1; i < (NF-1); i++ ) { printf "%s", $i; if( i < NF-2 ) { printf "-"; }; } printf " was danach\n"; }' HTH, HAND -dnh -- "What I saw in the Xerox PARC technology was the caveman interface, you point and you grunt." -- Eben Moglen -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org