Re: [bash] Einlesen einer Datei
Hallo Thilo,
Am Donnerstag, 20. Januar 2005 11:50 schrieb Thilo Engelbracht:
> Hallo Liste!
>
> Ich habe hier mehrere Textdateien, in der diverse Informationen ent-
> halten sind. Die Files haben folgendes Aufbau:
>
> Art des Accounts: normal
> Benutzername (kurz): thilo
> Benutzername (lang): Thilo Engelbracht
> System-Kennwort: geheim1
> E-Mail-Kennwort: geheim2
> E-Mail-Quota (in Byte): 1000000
>
Eine kleine Anregung für weitere Ideen für dich :-)
#!/bin/sh
USERDAT=`cat $1`
get_var ()
{
echo "$USERDAT" | grep "^$1:" | sed "s/^[^:]*:[ \t]*//;s/[ \t]*$//"
}
ACCOUNT=`get_var "Art des Accounts"`
NKURZ=`get_var "Benutzername (kurz)"`
NLANG=`get_var "Benutzername (lang)"`
USERKW=`get_var "System-Kennwort"`
MAILKW=`get_var "E-Mail-Kennwort"`
QUOTA=`get_var "E-Mail-Quota (in Byte)"`
echo "$ACCOUNT"
echo "$NKURZ"
echo "$NLANG"
echo "$USERKW"
echo "$MAILKW"
echo "$QUOTA"
Vorteil: Dateiformat sehr offen (zusätzliche Zeilen, Reihenfolge der
Einträge), da alles andere herausgefiltert wird.
Vorteil: zwischen "Schlüsselstring:" und dem Wert dürfen beliebig Spaces oder
Tabs zur Formatierung benutzt werden. Spaces und Tabs am Zeilenende werden
auch abgeschnitten.
Nachteil: Die auszulesenden Einträge (Schlüsselwörter) dürfen in der Datei nur
einmal vorkommen.
Gruß
Micha
Reply to: