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

Re: [OT] awk-Akrobatik



Hallo Heike,

auch an Dich ein Dankeschoen!

Ich habe jetzt folgendes Skript zusammen, in das ich einige Eurer
Vorschlaege habe einfliessen lassen:

#!/bin/bash
#
ALIASFILE="aliases.ls"
# 
# Usernamen als Argument:
USER=${1}
#
# Alias extrahieren, sofern vorhanden.
# Gibt wenn vorhanden, den Alias und sonst nichts zurueck:
#
ALIAS=`awk -F": " -v USER="${USER}" \
'$2==USER { print $2 ", \"| /usr/bin/vacation -A " $1 " " $2 "\"" }' $ALIASFILE`
#
# Teste $ALIAS auf Laenge 0:
#
if [ ! {$ALIAS}="\n" ];
  then echo "${ALIAS}"
  else echo "${USER}, \"| /usr/bin/vacation ${USER}\""
fi

Es funktioniert auch fast:
- Gibt man als Argument einen nicht in $ALIASFILE existenten Namen an,
  so wird der erste Zweig der if..then-Verknuepfung verwendet:

  $ ./test4.sh schmidt 
  schmidt, "| /usr/bin/vacation schmidt

- Gebe ich nun aber einen in $ALIASFILE existenten Benutzernamen an,
  so kommt zwar das richtige Ergebnis heraus, zunaechst aber eine
  Fehlermeldung:

  $ ./test4.sh schmidtc
  ./test4.sh: line 16: [: too many arguments
  schmidtc, "| /usr/bin/vacation schmidtc"

Ansonsten bin ich mal wieder beeindruckt, was man mit ein wenig
Geskripte so alles erreichen kann... ;-)

Gruss & Dank,
Christian
-- 
Ein Kaufmann macht durch allzu großes Rühmen die Ware, die ihm feil
ist, nur verdächtig.
		-- Quintus Flaccus Horaz (65-8 v.Chr.)

Attachment: signature.asc
Description: Digital signature


Reply to: