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]
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 93403
Url: https://administrator.de/contentid/93403
Ausgedruckt am: 23.11.2024 um 08:11 Uhr
1 Kommentar
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 /?