pollekowski
Goto Top

Formatieren einer Ausgabe mit Variablen

Wie kann ich ein "ECHO %Variable1:~Var2,VAR3%" umsetzen?

Hallo,

ich versuche gerade eine Variable auszugeben bei der vorn und hinten jeweils etwas abgeschnitten wird.

Das Programm könnte auten:
@ECHO OFF & setlocal EnableDelayedExpansion 
SET Var1 = "Antwort von 193.99.144.80: Bytes=32 Zeit=13ms TTL=246"  
SET Var2 = 41
SET Var3 = 10

REM Ausgeführt werden soll im Bsp. ECHO %Var1:~41,-10%
ECHO %Var1:~Var2,-VAR3%
Und die Ausgabe sollte dann nur "13" sein.

Jemand ne Idee?

Content-Key: 128091

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

Printed on: April 19, 2024 at 12:04 o'clock

Member: H41mSh1C0R
H41mSh1C0R Oct 28, 2009 at 09:43:21 (UTC)
Goto Top
Wenn du eine Zeichenkette zerlegen willst, heißen die Stichwörter Delimiter (Trennzeichen) und Token.

Interpretier ich das richtig und du willst von Var1 nur die 13ms oder was willst du abschneiden bzw. dran lassen? *Glaskugel schrupp*
Member: Pollekowski
Pollekowski Oct 28, 2009 at 09:59:00 (UTC)
Goto Top
Genau, ich will nur die 13. Auch ohne ms.

Je nach Rechner und Zielhost können IP und TTL halt unterschiedlich lang sein.
Member: H41mSh1C0R
H41mSh1C0R Oct 28, 2009 at 10:03:31 (UTC)
Goto Top
dann nimm 2 delimiter

einmal "=" um den Anfang der interessierenden Zeichenkette zu markieren und danach falls kein 2tes "=" kommt nimmst "ms" als 2ten Delemiter und die dazwischen ermittelte Zeichenkette gibst du aus, denn das ist deine Zeit. =)
Member: Pollekowski
Pollekowski Oct 28, 2009 at 10:32:20 (UTC)
Goto Top
Warum denn nicht gleich so face-smile

SET HOSTIP=193.99.144.80

SET MYDATE=%DATE:~0,2%_%DATE:~3,2%_%DATE:~6,4%
SET LOG=Logfiles\%HOSTIP%-%MYDATE%.log
SET TMP=tmp\%HOSTIP%.tmp
SET TMP2=tmp\%HOSTIP%.tmp2
MD TMP
MD Logfiles
DEL %TMP%
DEL %TMP2%

ping %HOSTIP% -n 1 > %TMP%
findstr "TTL=" %TMP%  
If %ERRORLEVEL% EQU 0 GOTO CUTOFF
GOTO irgendwasanderes

:CUTOFF
DEL %TMP2%
FOR /F "tokens=5 delims= " %%T IN ('findstr "TTL=" %tmp%') DO ECHO %%T >%TMP2%  
SET /P PINGTIME=< %TMP2% 

ECHO %PINGTIME:~5,-3%

Danke für den Denkanstoß
Pollekowski
Member: H41mSh1C0R
H41mSh1C0R Oct 28, 2009 at 13:17:57 (UTC)
Goto Top
bitte bitte und danke für die batch für die Allgemeinheit =) So machen die Threads Spaß, wenn hierbei auch was rumkommt. So wird auch später denen geholfen die es schaffen die SUFU zu benutzen =).