# Batchdateien: Programmausgabe als SET-Variable speichern und als Parameter übergeben



## sansmalrst (25. September 2007)

Hi Leute,

ich möchte unter Windows XP die Textausgabe des Skriptes GetResult.vbs per Batchdatei als Parameter an ein weiteres Skript ProcessResult.vbs übergeben. Folgendes funktioniert bereits:

@echo off
cscript //Nologo GetResult.vbs >ipTemp.txt
set /p ipnr=<ipTemp.txt
cscript //Nologo ProcessResult.vbs %ipnr%
del ipTemp.txt
set ipnr=​
Daran stört mich nun aber, dass der Umweg über die Datei genommen wird. Gibt es eine Möglichkeit, eine Programmausgabe direkt in eine Umgebungsvariable zu schreiben oder noch besser mit dem Pipe-Operator direkt ohne Umgebungsvariable auszukommen?

Vielen Dank & Gruß!


----------



## deepthroat (26. September 2007)

Hi.





sansmalrst hat gesagt.:


> Gibt es eine Möglichkeit, eine Programmausgabe direkt in eine Umgebungsvariable zu schreiben oder noch besser mit dem Pipe-Operator direkt ohne Umgebungsvariable auszukommen?


Ja. Dazu mußt du nur das ProcessResult.vbs Skript dahingehen anpassen, das es den Parameter von der Standardeingabe liest und nicht wscript.arguments benutzt. Das kannst du abhängig davon machen ob nun Argumente übergeben wurden oder nicht.

Gruß


----------

