Ich habe diese funktionierende For / F-Schleife:
Setlocal EnableDelayedExpansion
for /F "tokens=*" %%A in (New.txt) do (
echo "%%A" | findstr /C:"[B]" 1>nul
if !errorlevel!==1 echo "%%A"
set line=%%A
if !errorlevel!==0 echo BOLD !line:[B]=!
)
Was sie tut , ist Zeilen in einer Textdatei eingeben, mit Ausnahme , wenn es über eine Leitung mit dem Text coms [B]
darin, fügt er BOLD
an den Anfang der Zeile. Ich suche nach einer Möglichkeit, etwas Ähnliches zu haben, [S]
wo es SUPER
zum Anfang beitragen kann. Ich hatte das:
Setlocal EnableDelayedExpansion
for /F "tokens=*" %%A in (New.txt) do (
echo "%%A" | findstr /C:"[B]" 1>nul
if !errorlevel!==1 echo "%%A" | findstr /C:"[S]" 1>nul & if %errorlevel%==1 echo "%%A" & if %errorlevel%==0 echo SUPER !line:[S]=!
set line=%%A
if !errorlevel!==0 echo "!line:[B]=!"
)
Es funktioniert jedoch nicht, weil das so läuft.
EDIT: Ich kann die Schleife nicht mit einem break oder goto beenden, da mehrere Zeilen zu verarbeiten sind.
windows
batch-file
findstr
Mark Deven
quelle
quelle