Aufruf von PowerShell aus der charge und dem abrufen des neuen Wertes eine temporäre Umgebungsvariable im script?

Ich hoffe, der Titel ist prägnant, aber nur für den Fall:

Rufe ich ein PowerShell-Skript aus einer batch-Datei. Ich will das PowerShell-Skript, um den Wert einer environment-variable ist, und diesen neuen Wert dann in die batch-Datei, wenn Sie das PowerShell-Skript beendet.

Ich weiß, dass es möglich ist, eine Umgebungsvariable festlegen, die Verwendung von $env in der PowerShell, aber der Wert nicht beibehalten, wenn Sie das PowerShell-Skript beendet wird. Ich denke, das ist wahrscheinlich, weil PowerShell ausgeführt wird in einem separaten Prozess.

Ich bin mir bewusst, dass ich zurückkehren kann, eine exit-code und die Benutzung von %ErrorLevel%, aber das wird nur geben Sie mir zahlen, und es wird ein Konflikt, der seit 1 zeigt eine PowerShell-Ausnahme eher als eine nützliche Zahl ist.

Nun, hier ist die Einschränkung: ich will nicht die environment-variable bestehen. Das heißt, ich will nicht, dass es definiert werden, die für den Benutzer oder das system, und deshalb will ich es nicht zur Verfügung steht, sobald Sie die batch-Datei beendet. Letztlich möchte ich einfach nur zu kommunizieren, die Ergebnisse aus einem PowerShell-script an den aufrufenden batch-Datei.

Ist das möglich?

Vielen Dank im Voraus 🙂

Nick

Schreibe einen Kommentar