Diskussion:Batch-Programmierung: Erweiterungen unter Windows NT
Letzter Kommentar: vor 15 Jahren von 134.60.98.67
Habe eben die Umleitung einer Ausgabe in eine Variable eingefügt, diese Methode ist vorallem hilfreich,
wenn z.B. IF-Abfragen durchgeführt werden sollen, das Beispiel sollte möglichst einfach sein, ich gebe aber zu, daß hier der eigendliche Vorteil der Umleitung nicht deutlich wird.
Deshalb hier noch ein weiteres Beispiel:
@ECHO OFF REM Das Programm grep.exe muß im Suchpfad vorhanden sein. SET PF=pattern.tmp ECHO. REM --- Export Example file ------------------------------------------------------------------------ ECHO CONVERGENCE CS-ADL03 SECANT> test.txt ECHO BLOCK-OPTION CONV-LEVEL=3 TERM-LEVEL=3 VAR-LEVEL=3 ^&>> test.txt ECHO TVAR-LEVEL=3 >> test.txt ECHO SPEC DS-ADL03 >> test.txt ECHO PARAM MAXIT=35 MAX-STEP-SIZ=0.1 XTOL=1E-010 BRACKET=YES ^&>> test.txt ECHO XFINAL=XLAST VARITERHIST=YES >> test.txt ECHO READ-VARS SPMEA3 FXAD03 USMESP >> test.txt ECHO WRITE-VARS PSWTDA PSMEDA PSMEA3 PSWTA3 ZIDSPM SPMEA1 ^&>> test.txt ECHO SPWTA1 >> test.txt ECHO TEAR-VARS TEAR-VAR=SPMEA1 >> test.txt ECHO TEAR-VARS TEAR-VAR=SPWTA1 >> test.txt ECHO BLOCK-OPTION TVAR-LEVEL=3 >> test.txt ECHO greps: "=NaN" and "= NaN">> test.txt ECHO ^(m^) >> test.txt REM ------------------------------------------------------------------------------------------------ :: Redirect Output to Variable via file ECHO \^(XFINAL=[A-Z]{4,8}\^)>%PF% ECHO type %PF% type %PF% grep -o -i -E --file=%PF% test.txt> _.tmp ECHO type _.tmp type _.tmp :: Redirect File content in variable: SET /P _tmp2=<_.tmp ECHO a.^) _tmp2: ###%_tmp2%### :: Delete Spaces: SET _tmp2=%_tmp2: =% ECHO b.^) _tmp2: ###%_tmp2%### IF "%_tmp2%"=="XFINAL=XLAST" ( ECHO Final X: Of last cycle ) ELSE ( ECHO XFINAL is different from Value XLAST )
Grüße
Stefan --134.60.98.67 17:45, 2. Feb. 2009 (CET)