BUG in batch datei (loop.bat)
Ich habe ein problehm mit der unten genanten batch datei.
immer wen ich den befehl "loop help" eingebe bekomme ich immer diese fehlermeldung
"==0" ist syntaktisch an dieser stelle nicht vereinbar.
das pasiert bei jedem einstelligen befehl z.B. loop netstat, loop /?.
ich habe mich schon ewig damit beschäftigt nd keine lösung daführ gefunden.
wen jemand unter euch eine ide hat were das klasse (ich freue mich auf jeden vorschlag zur problehmlösung) danke.
loop.bat
immer wen ich den befehl "loop help" eingebe bekomme ich immer diese fehlermeldung
"==0" ist syntaktisch an dieser stelle nicht vereinbar.
das pasiert bei jedem einstelligen befehl z.B. loop netstat, loop /?.
ich habe mich schon ewig damit beschäftigt nd keine lösung daführ gefunden.
wen jemand unter euch eine ide hat were das klasse (ich freue mich auf jeden vorschlag zur problehmlösung) danke.
loop.bat
@echo off
if %1==--help (echo Fhrt den angeg„benen Befehl immer wieder aus
echo .
echo loop Befehl
echo .
echo -t Zahl Zeitintervalle bis zum n„chsten Sart, Standart Wert ist 1
echo -t 0 Abschalten der Verz”gerung
goto 4)
if %1==-t (if %2==0 goto 2
set n=%2
goto 3)
:1
cls
%1 %2 %3 %4 %5 %6 %7 %8 %9
ping -n 1 1.1.1.1 > nul
goto 1
:2
cls
%3 %4 %5 %6 %7 %8 %9
goto 2
:3
cls
%3 %4 %5 %6 %7 %8 %9
ping -n %n% 1.1.1.1 > nul
goto 3
:4
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 68881
Url: https://administrator.de/contentid/68881
Ausgedruckt am: 22.11.2024 um 07:11 Uhr
2 Kommentare
Neuester Kommentar
Hallo kunert0345 und willkommen im Forum!
Mein Vorschlag (inkl einiger kleinerer kosmetischer Korrekturen) sähe so aus:
Zur Lösung des "if"-Problems habe ich an den entsprechenden Stellen Anführungszeichen gesetzt, wodurch auch bei fehlenden Parametern noch ein Vergleich möglich ist. Beim Aufruf mit "loop help" ergäbe sich dann in der relevanten Zeile:
Vielleicht noch kurz zu %~1: Damit werden eventuell übergebene Anführungszeichen entfernt (da ich ohnehin selbst welche setze) - wäre hier nicht unbedingt nötig, schadet aber auch nicht.
Grüße
bastla
Mein Vorschlag (inkl einiger kleinerer kosmetischer Korrekturen) sähe so aus:
@echo off
if {{comment_strings:23617355782}}=="--help" (
echo Fhrt den angegebenen Befehl immer wieder aus
echo.
echo loop Befehl
echo.
echo -t Zahl Zeitintervalle bis zum n„chsten Start, Standardwert ist 1
echo -t 0 Abschalten der Verz”gerung
goto :eof
)
if "%~1"=={{comment_strings:2112839485}} (
if "%~2"=="0" goto 2
set n=%~2
goto 3
)
:1
cls
%1 %2 %3 %4 %5 %6 %7 %8 %9
ping -n 1 127.0.0.1 > nul
goto 1
:2
cls
%3 %4 %5 %6 %7 %8 %9
goto 2
:3
cls
%3 %4 %5 %6 %7 %8 %9
ping -n %n% 127.0.0.1 > nul
goto 3
if "help"=="-t" (if ""=="0" goto 2
Grüße
bastla