[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[OT] awk-Akrobatik



Hallo Liste,

gerade tueftele ich an einem Wrapper fuer "vacation" herum, der ein
~/.forward-File in folgendem Format erzeugen soll:
benutzername, "| vacation -A alias benutzername"

Der Alias stellt dabei das Konstrukt Vorname.Nachname dar; die Aliasse
aller Benutzer liegen in _einer_ Datei:
Vorname.Nachname: benutzername
Also beispielsweise:
Christian.Schmidt: schmidtc

Was mir vorschwebt, ist folgendes:
- Ich suche nach dem Benutzernamen in der aliases-Datei.
- Beim entsprechenden Match extrahiere ich die erste Spalte, entferne
  den Doppelpunkt, haenge "-A" vornedran und echoe das Ergebnis
  zusammen mit dem Rest in die .forward-Datei.

Was ich bisher habe, ist folgendes:

awk '($2=="schmidtc") {print $1}' ${ALIASFILE}
liefert mir "Christian.Schmidt:" zurueck.

awk '($2=="schmidtc") {print $1}' ${ALIASFILE} | sed -e 's/\://'
liefert mir "Christian.Schmidt" zurueck.
Irgendwie kann ich das Entfernen des abschliessenden Doppelpunkts doch
sicher auch von awk erledigen lassen, oder?

Wenn ich das bisher erwaehnte in einem Shellskript formuliere:

#!/bin/bash
  #
  ALIASFILE="aliases.ls"
  USERNAME=${1}
  #
  awk '($2=="${USERNAME}") {print $1}' ${ALIASFILE} | sed -e 's/\://'

...dann passiert nichts - ich bekomme keine Ausgabe.
Beissen sich die Variablendeklarationen mit den "intern"
von awk verwendeten?
Kann mir jemand einen Stoss in die richtige Richtung verpassen?
Manual Pages und Googeln haben mir nicht wirklich weitergeholfen...

Gruss, Danke & sorry fuer OT,
Christian
-- 
Frauen schulden keiner einzigen Religion Dank für auch nur einen
Impuls der Freiheit.
		-- Susan Brownell Anthony

Attachment: signature.asc
Description: Digital signature


Reply to: