[Batch] Anführungszeichen-Filter ist unmöglich?

ich glaube mein problem ist, dass ich steuern will,
wann die zeichen aufgelöst werden sollen und wann nicht.

d.h. mal möchte ich "%AB%" und mal "{wert von AB}"
 
ja ich bin ersaunt, dass man "echo" auch mit einem "call" bedienen kann
und dass dieser sich dann anders verhält... sehr interessant und sehr nützlich.

ich glaube das "verschachteln" habe ich vermutlich schon 'versehendlich' gemacht,
indem ich den spaß durch eine/mutible forschleife(n) gejagt habe.

ich wurde an meinem demo-script unterbrochen,
es läuft alles wie erwartet und sitze quasi an der letzten ebene,
die ich erstmal selbst verstehen muss, um nichts falsch zu machen... XD
 
so, dass sollte es sein...
- man kann an einander reihen
- verschachteln
- roh ausgeben
- oder auswerten lassen

funktions dokumentationen erspare ich mir mal,
ich fisch mir eh das raus was ich gerade brauch... XD

[edit:]
seh grad in den älteren posts,
manchmal seh ich den wald vor lauter bäumen nicht...
XD

Code:
@echo off
::DEMO - Self-Generating Variables (SbS & Containerd)


:SET
set x1=xA
set x2=xB
set x3=xC
:SET_SbS
set "xAo1={Ao1 works}"
set "xAo2={Ao2 works}"
set "xBo1={Bo1 works}"
set "xBo2={Bo2 works}"
:SET_Containerd
set "xAxB={AB works}"
set "xAxBxC={ABC works}"

echo.[SbS][Demo:1]
echo.
::              %% %x1% o1 %%
     echo.    echo: [%%%x1%o1%%]
call     echo.    call: [%%%x1%o1%%]
echo.


echo.[SbS][Demo:2]
echo.
::                  %% %x1% %x2% %%
         echo.    echo: [%%%x1%%x2%%%]
    call     echo.    call: [%%%x1%%x2%%%]
    for /F "delims=" %%a  IN ('echo.%%%x1%%x2%%%')  DO (echo.    for1: [%%a])
    echo.

echo.[Containerd][Demo:2b]
    for /F "delims=" %%a  IN ('echo.%x1%%x2%')  DO (for /F "delims=" %%b  IN ('echo.%%%%a%x3%%%')  DO (call echo.    for2: [%%b]) )
    echo.

echo.[Containerd][Demo:3]
:SET_Containerd
set "xAx2=xAx2_next"
set "xAx2_next={xAx2_next works}"
::              %% %x1% x2% %%
    echo.    echo: [%%%x1%x2%%%]
    for /F "delims=" %%a  IN ('echo.%%%x1%x2%%')  DO (echo.    for1: [%%a])
    for /F "delims=" %%a  IN ('echo.%%%%%x1%x2%%%%')  DO (echo.    for1: [%%a])
    for /F "delims=" %%a  IN ('echo.%%%%%x1%x2%%%%')  DO (for /F "delims=" %%b  IN ('echo.%%a')  DO (echo.    for2: [%%b]) )
    echo.
goto :end



:end0
    echo.
    set x
::    @pause
:end
    @exit

ich hab mit noch n kleines slow-loop-drop-script gebastelt,
so bekomm ich immer eine ausgabe.
ist auch "Syntax-Error" stabil... :p
Code:
@echo off

:xsLoop
@ping 0 -n 2  >NUL 2>NUL
@cls
echo.[ctr+c to break]
echo.----------------
echo.

cmd /c %1

goto :xsLoop
@pause
@exit
 
Zuletzt bearbeitet:
Zurück
Oben Unten