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

Re: [bash] Einlesen einer Datei



Hallo, 

* On Sat, Jan 22, 2005 at 03:26:32PM +0100, Thilo Engelbracht wrote:
> Am 22.01.2005 um 14:13 Uhr schrieb Nicolas Heuser <nicolas1023@gmx.net>:
> 
>            userkw=`echo $zeile | cut -d : -f 2 | cut -d " " -f 2-`
>            echo $userkw
>            read zeile
>            mailkw=`echo $zeile | cut -d : -f 2 | cut -d " " -f 2-`
>            echo $mailkw
>            read zeile
>            quota=`echo $zeile | cut -d : -f 2 | cut -d " " -f 2-`
>            echo $quota
>         done
>      fi
>      echo
>      echo "Variablen:"
>      echo $account
>      echo $nkurz
>      echo $nlang
>      echo $userkw
>      echo $mailkw
>      echo $quota
> 
> 
> Und hier die Ausgabe:
> 
>      [Leerzeile]
>      [Leerzeile]
..............

> 
> Es ist schon merkwürdig: Die Variablen werden bei der ersten Ausgabe
> (innerhalb der "do ... done"-Anweisung) korrekt angezeigt - bei der
> zweiten Ausgabe (also nach der "do ... done"-Anweisung) sind die
> Variablen aber wieder "leer"...

Das Problem ist ganz klar shell und Variablen.

Dazu nur soviel: Du startest in deinem script eine "sub-shell" die
parallel zum Prozess laeuft und da sind natuerlich die vars wieder
weg wenn nichts besonderes angesagt ist ;)


Wie man das umgeht wurde schon kurz angesprochen, setze das
komplette in
# schlechter Stil
 ( ... )



Aber das waere wohl nicht die Erfindung von der shell/bash, ich
wuerde es mit getopt (man getops, man bash) versuchen.
oder einfach


# typeset -x exportiert Variablen in die Shellumgebung

$ typeset -x var=foo

sollte das sein was du suchst. (?)
Im uebrige: es gibt verdammt viele versch. Variablen.
Wie auch es auch versch. shell's gibt.

Gruss, Clemens Wohld 

-- 
                                                    sig_22
Prozessauskunft ueber ein bestimmtes Prog. bekommt man mit
$ ps aux | grep <Programm>        [Info: man grep; man ps]
          [X-Page: http://www.senc-xpage.de]
----------------------------------------------------------



Reply to: