budders
Goto Top

Ping mit Variable in Datei

Moinmoin.
Ich habe einen Batch geschrieben, der eine IP pingen (sollte) und mir das Ergebnis ausgeben soll.

 
ping %ip3%>ping.tmp
for /f %%i in (ping.tmp) do (
	set ip2=%%i
	if %ip2:~0,4%=="Antw" goto sucess  
	if %ip2:~0,4%=="Zeit" goto fail  
)

die Variable ping3 enthält die IP, wurde vorher nur durch ein set /p x= definiert.

Doch in der Datei ping.tmp werden komischerweise alle vorher ausgeführten echo's ausgegeben...

Könnt ihr mir helfen?

Content-Key: 214578

Url: https://administrator.de/contentid/214578

Printed on: April 16, 2024 at 06:04 o'clock

Member: bastla
bastla Aug 17, 2013 updated at 18:49:29 (UTC)
Goto Top
Hallo Budders!

Wenn's nur darum geht, zwischen "success" und "fail" zu unterscheiden, sollte etwas in der Art von
ping %ip3%|findstr "TTL">nul && goto :success  

echo fail
goto :eof

:success
echo success
genügen ...

Grüße
bastla
Mitglied: 112778
112778 Aug 17, 2013 at 23:38:55 (UTC)
Goto Top
Hi, Budders,

unabhängig von bastlas Vorschlag würde dein Script so nie funktionieren, da deine Vergleichssyntax niemals ein brauchbares Ergebnis liefern würde.
Wenn du rechts Anführungszeichen verwendest, musst du sie links auch nutzen.

Gruß
Member: bastla
bastla Aug 18, 2013 at 09:32:36 (UTC)
Goto Top
@ EisPott
... wobei es nicht viel Unterschied macht, ob der Vergleich
~0,4=="Antw"
oder
"~0,4"=="Antw"
lautet ... face-wink

Grüße
bastla
Mitglied: 112778
112778 Aug 18, 2013 updated at 16:08:29 (UTC)
Goto Top
@ bastla

es ging ja nur ums Prinzip, um die syntaktisch korrekte Verwendung. Ob im diesem speziellen Fall immer Stuss rauskommt, habe ich dabei mal außer Acht gelassen. face-smile

Gruß
Member: bastla
bastla Aug 18, 2013 updated at 17:24:25 (UTC)
Goto Top
@ EisPott
es ging ja nur ums Prinzip
Ist ja richtig - dann könntest Du aber zusätzlich die Verwendung der Temp-Datei, das (versuchte) Kürzen der Zeilen auf die ersten 4 Zeichen (in "%%i" steht ja ohnehin nur das erste Token) und das Springen aus einer "for"-Schleife hinterfragen ...

Grüße
bastla
Mitglied: 112778
112778 Aug 18, 2013 at 17:38:06 (UTC)
Goto Top
Hi, bastla,
dann könntest Du aber zusätzlich .... hinterfragen ...

dazu bestand doch überhaupt keine Notwendigkeit, dein Einzeiler ist doch perfekt. face-smile

Gruß
Member: bastla
bastla Aug 18, 2013 at 17:46:11 (UTC)
Goto Top
@ EisPott
Danke für die Blumen ... face-smile

... auch wenn's eigentlich nicht mein Einzeiler ist, sondern mehr oder weniger die Standard-Vorgangsweise hier im Batch-Bereich.

Grüße
bastla
Member: Budders
Budders Aug 29, 2013 at 06:28:12 (UTC)
Goto Top
danke für eure Antworten, mal davon abgesehen, dass eure versionen top funktionieren, hatte ich den fehler gemacht den Batch "ping.bat" zu nennen, somit hatte ich immer einen sehr merkwürdigen fehler.
naja, jetzt ist alles geklärt face-smile wie immer sehr kompetente hilfe hier,
vielen dank face-smile
MfG Budders/Gerrit