Christian Schmidt <[EMAIL PROTECTED]> writes:

> 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.

Das gibt nur was aus, wenn $2 exakt den String "${USERNAME}" enthält.
Was du meinst, ist vermutlich:

>   awk '($2=='"${USERNAME}"') {print $1}' ${ALIASFILE} | sed -e 's/\://'
              ^             ^  

Die Klammern um USERNAME sind überflüssig - sowohl die geschweiften
als auch die runden (um den ganzen Ausdruck).  Aber sie stören
natürlich nicht.

Die Shell kann aber schließlich selbst splitten und ersetzen.
Insgesamt würde ich es daher eher so in dieser Art probieren:

#!/bin/bash
set $(egrep ".*: +$USERNAME$") "$ALIASFILE"
echo "$USERNAME, | vacation -A ${1/:/} $USERNAME"

soweit ich bei deiner Beschreibung auf die Schnelle durchgestiegen
bin (ungetestet).

Gruß,

 Heike


-- 
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)

Antwort per Email an