Umgebungsvariablen"ubergabe unter a99

Allers Heinrich allers at goethe.de
Do Dez 7 20:44:28 CET 2000


M. Manecke schrieb heute mit Blick auf eine von T. Berger am 2.12. eher
rhetorisch gestellte Frage:

> Ich habe für den Aufruf von Dos-OPACs in meinem jump.flx folgendes 
> eingebaut:
> 
> ascii
> var 'env -x=' #uss
> ansi
> set
> 
> Damit besetze ich -x mit der gerade gültigen Ansetzung.
> 
> Beim danach gestarteten Batch-Aufruf für APAC versteht dieser die 
> Zeile:
> 
> %-P%\apac -f1 -d%-D%\bib\as8b -n1 -a33 -pas8_d-1 -s"|%-x%"
> 
> -x scheint angekommen zu sein. Jedenfalls lande ich im richtigen 
> Register an der richtigen Stelle.
> 
> Meinten Sie etwas ganz anderes?

Mir scheint, daß Herr Berger das tatsächlich meinte, als er seinerzeit
schrieb:

> .... Warum es .... nicht moeglich ist, mit "put env"
> in a99 den Umgebungsbereich fuer eine im folgenden 
> aufgerufene .bat-Datei zu impfen.

Doch, das geht, so wie Herr Manecke sagt! Und zwar nicht mit "put env ...",
sondern mit dem Flex-Befehl "set env ...":

set env umgvar=abcedefgh

sorgt dafür, daß eine anschließend aufgerufene Stapeldatei wirklich mit der
entsprechend besetzten Umgebungsvariablen "geimpft" ist, in dieser
Stapeldatei die Umgebungsvariable also etwa so benutzt werden kann:

echo Umgebungsvariable 'umgvar' ist mit %umgvar% besetzt!

Was Herr Berger aber für die andere Richtung (daß "Impfung" einer Flex-Datei
mit einer vorher aufgerufenen Stapeldatei nicht funktioniert) sagt und als
Erklärung dafür nennt, stimmt aber wohl:

> ... Guenstigstenfalls hat ein Kind-Prozess einen eigenen
> Umgebungsbereich, dass er den des aufrufenden Prozesses 
> veraendern kann, ist ziemlich unerwuenscht (auch wenn es 
> bei DOS-.bat-Dateien natuerlich geht).

Sein resümierender Schlußsatz:

> Jedenfalls ist Komminikation ueber Umgebungsvariable
> in beide Richtungen nicht moeglich.

ist also nicht richtig, denn nur die Kommunikation Stapeldatei --> Flexdatei
geht nicht, die Kommunikation Flexdatei --> Stapeldatei durchaus!


Mit besten Grüßen:

Heinrich Allers

Goethe-Institut, Postfach 19 04 19, D-80604 München
Tel. ++89 / 15921 471; Telefax: ++89 / 15921 435
allers at goethe.de; http://home.t-online.de/home/allers
* Kulturen in Deutschland? Ja!
  Deutsche Leitkultur? Nein, Danke!




Mehr Informationen über die Mailingliste Allegro