Forum: PC-Programmierung export der sub shell umgebungsvariablen zur 'mutter' shell


von toto (Gast)


Lesenswert?

Tag zusammen, ich starte den ersten shell via cmd.exe . Von da starte 
ich einen andern shell wo diverse umgebungsvariablen gesetzt werden. 
Wenn ich den 2 shell verlasse und zur 1. Shell zuruck komme sind die 
umgebungsvariablen der 2. Shell nicht mehr vorhanden(logich lokal var.)
meine frage.: wie kann ich die lokalen variablen der 2. Shell in der 1. 
Shell ubernehmen bzw. Importieren?

danke

von Nico S. (nico22)


Lesenswert?

Indem du die Variablen in der 1. Shell setzt.

von toto (Gast)


Lesenswert?

Das geht nicht. Der 2. Shell ist ein externer shell von windriver zum 
setzen der umgebungsvariablen fur die weitere nutzung in der shell. Aber 
ich habe ein eignen shell und wollte dise 2. Shell zum sichern setzen 
der umgebungsvariablen.
Gibts es kein andern bessern trick?

von Peter II (Gast)


Lesenswert?

starte sie mal mit call

von toto (Gast)


Lesenswert?

Gute idee. Hab es probiert. Leider werden die umgebungsvariablen nicht 
in der 1. Shell ubernommen :(

von (prx) A. K. (prx)


Lesenswert?

CMD.EXE kling nach Windows: Evironment-Variablen von Shell-Scripts, die 
direkt mit CALL aufgerufen werden, die werden in die aufrufende Shell 
übernommen. Wenn die erste Shell ein EXE aufruft und dieses wieder eine 
zweite Shell, dann nicht.

Abhilfe: In der zweiten Shell ein temporäres Script erzeugen, mit
  set x=y
drin, und dieses Script in der ersten Shell mit CALL aufrufen.

von toto (Gast)


Lesenswert?

Also ich verstehe dein antwort 100% nicht. Weil wie gesagt ich kann den 
2. Shell (write.envirenement.exe von externen anbieter nicht andern)
kannst du das vielleocht genauer beschreiben was du meinst? Thx

von Yalu X. (yalu) (Moderator)


Lesenswert?

toto schrieb:
> Weil wie gesagt ich kann den 2. Shell (write.envirenement.exe von
> externen anbieter nicht andern)

Du meinst sicher wrenv.exe. Das "wr" steht übrigens nicht für "write",
sondern für "Wind River".

  wrenv -p package

öffnet eine neue interaktive Shell, in der die entsprechenden Umgebungs-
variablen gesetzt sind (für package ist der Name des Wind-River-Pakets
einzutragen, mit dem gearbeitet werden soll). Von dort aus kannst du per
Kommandozeile beliebige Programme aufrufen, insbesondere auch die Tools
von Wind River, die die gesetzten Umgebungsvariablen benötigen.

Alternativ kannst du dir mit

  wrenv -p package -f bat -o print_env >setwrenv.bat

eine Batch-Datei zum Setzen der Umgebungsvariablen erzeugen. Diese Datei
kannst du dann anstelle von wrenv aufrufen, wenn du keine neue Shell
starten möchtest.

Mehr dazu findest du in der Dokumentation von Wind River.

von toto (Gast)


Lesenswert?

Genuau so ist das was ich gesucht habe super besten dank

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.