Batch Syntaxfehler unter Win98 windows98 for schleife
Hallo,
ich versuche eine Batch zu schreiben um Open Office ein paar Macken
unter Win98 auszureden.
Nun erzählt mir der Dosprompt von Syntaxfehlern und ich weiß nicht warum. Unter XP funktioniert der Code problemlos.
Zwischen den beiden rems kommt die Fehlermeldung.
Ich hoffe jemand weiß Rat??
@echo off
set strn= -nofirststartwizard
set cnt=0
set patched=0
DIR "%windir%\Startmen\Programme\OpenOffice.org 2.4\*.lnk" /B >"%temp%\ordner.tmp"
pause
rem xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
for /f "tokens=*" %%i in (%temp%\ordner.tmp) do Set call :counter "%%i"
rem xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
:counter
pause
set /a "cnt=%cnt% + 1"
if "%~1%cnt%"=="%cnt%" goto :ende
Set "link%cnt%=%~1"
ren "%~1" "%cnt%.lnk"
@for /f "delims=" %%a in (%cnt%.lnk) do set last20=%%a
@set last20=%last20:~-20%
if "%last20%"=="%strn%" goto :lasaus
set /a "cnt=%cnt% + 1"
set /a "patched=%patched% +1"
echo -nofirststartwizard>>"%cnt%.lnk"
:lasaus
ren "%cnt%.lnk" "%~1"
set handled=%cnt%
if not "%~1%cnt%"=="%cnt%" goto :eof
:ende
del "%temp%\ordner.tmp"
rem del "%SystemDrive%\Programme\OpenOffice.org 2.4\program\quickstart.exe
echo.
echo.
echo.
echo.
echo %handled% Verknpfungengen wurden geprft!
echo.
echo %patched% Verknpfungengen wurden bearbeitet!
echo.
echo.
echo.
echo.
pause
^^[Edit Biber] Mehr als BauerHick dazu geschrieben hat ist nicht zu schreiben.
Beitrag am 4.8.2008 auf "gelöst" und "geschlossen" gesetzt. [/Edit]
ich versuche eine Batch zu schreiben um Open Office ein paar Macken
unter Win98 auszureden.
Nun erzählt mir der Dosprompt von Syntaxfehlern und ich weiß nicht warum. Unter XP funktioniert der Code problemlos.
Zwischen den beiden rems kommt die Fehlermeldung.
Ich hoffe jemand weiß Rat??
@echo off
set strn= -nofirststartwizard
set cnt=0
set patched=0
DIR "%windir%\Startmen\Programme\OpenOffice.org 2.4\*.lnk" /B >"%temp%\ordner.tmp"
pause
rem xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
for /f "tokens=*" %%i in (%temp%\ordner.tmp) do Set call :counter "%%i"
rem xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
:counter
pause
set /a "cnt=%cnt% + 1"
if "%~1%cnt%"=="%cnt%" goto :ende
Set "link%cnt%=%~1"
ren "%~1" "%cnt%.lnk"
@for /f "delims=" %%a in (%cnt%.lnk) do set last20=%%a
@set last20=%last20:~-20%
if "%last20%"=="%strn%" goto :lasaus
set /a "cnt=%cnt% + 1"
set /a "patched=%patched% +1"
echo -nofirststartwizard>>"%cnt%.lnk"
:lasaus
ren "%cnt%.lnk" "%~1"
set handled=%cnt%
if not "%~1%cnt%"=="%cnt%" goto :eof
:ende
del "%temp%\ordner.tmp"
rem del "%SystemDrive%\Programme\OpenOffice.org 2.4\program\quickstart.exe
echo.
echo.
echo.
echo.
echo %handled% Verknpfungengen wurden geprft!
echo.
echo %patched% Verknpfungengen wurden bearbeitet!
echo.
echo.
echo.
echo.
pause
^^[Edit Biber] Mehr als BauerHick dazu geschrieben hat ist nicht zu schreiben.
Beitrag am 4.8.2008 auf "gelöst" und "geschlossen" gesetzt. [/Edit]
Please also mark the comments that contributed to the solution of the article
Content-Key: 93403
Url: https://administrator.de/contentid/93403
Printed on: April 17, 2024 at 22:04 o'clock
1 Comment
Die for-Syntax, die du verwendet hast, funktioniert erst ab Windows 2000.
Du musst dich schon an das halten, was Windows 98 auch kennt.
HELP FOR oder FOR /?
Du musst dich schon an das halten, was Windows 98 auch kennt.
HELP FOR oder FOR /?