franc1967
Goto Top

IP Adresse mit findstr suchen und evtl. vorhandene Vornullen löschen NT 4.0 Server

Hallo,

mit folgendem Befehl hole ich aus windows nt 4.0 (server) eine IP Adresse aus einer Datei:

for /f %%i in ('findstr "192\..*\..*\.100" c:\test.txt') do set IP=%%i

Bei der Übergabe der Variable %IP% an ftp (ftp %IP%) ist mir aufgefallen, dass z.B. die IP 192.080.080.100 folgendes Ergebnis produziert:

"Host unreachable"

Die gleiche IP ohne Vornullen funktioniert einwandfrei (192.80.80.100).

Unter XP funktioniert das gleiche Szenario einwandfrei (neuere ftp und ping Version).

Irgendeine Idee, wie ich die führenden Nullen mit dem guten alten DOS löschen kann?

Danke für Eure Mühe...

Content-Key: 35401

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

Printed on: April 24, 2024 at 15:04 o'clock

Member: Metzger-MCP
Metzger-MCP Jul 05, 2006 at 08:10:19 (UTC)
Goto Top
Spontan fällt mir da nichts ein.

Was du machen könntest: suche in einem Editor nach ".0" unt lasse alle vrokommen mit "." ersetzen. schon hast du keine 0 mehr vor den Zahlenwerten.

MFG Metzger
Member: Biber
Biber Jul 05, 2006 at 21:40:38 (UTC)
Goto Top
...oder, muss ja kein Editor sein, nimm eins von den Search & Replace-Freewaretools, die hier auch schon im Bereich "Batch & Shell" beim Thema "Suchen und Ersetzen in Textdateien" genannt wurden.
Und lass damit die ".0" durch "." ersetzen.

Da Dir unter NT 4.0 die M$-CMD-Erweiterungen ja nicht zur Verfügung stehen, wäre das die unaufwändiste Möglichkeit.

Frage: Steht Dir denn VBSkript auf dem Server zur Verfügung? Damit wäre es ja auch nur ein Zweizeiler.

gruß
Biber
Member: franc1967
franc1967 Jul 06, 2006 at 17:29:49 (UTC)
Goto Top
Leider steht das nicht zur Verfügung. Ich kann auch kein Tool auf der Anlage einsetzen, da bekommen wir keine Genehmigung (Fremdsoftware). Ich habe leider nur Möglichkeiten des Betriebssystems zur Verfügung.

LG
Franc
Member: Biber
Biber Jul 06, 2006 at 17:42:11 (UTC)
Goto Top
Na ja, Franc,

in diesem Fall (ein "Search-and-Replace-Tool" als "Fremdtool") werden die Regel-Aufsteller auf dem Server aber wohl mit sich reden lassen - sonst zeig Ihnen diesen Thread.

Denn die nächst albernere Alternative (wenn auch kein VBS benutzt werden darf) wäre schon, den winzigen IP-String mit seinen max. 15 Zeichen mit einem Monsterwerkzeiug wie Excel o.ä. zu bearbeiten - weil da ein paar SubStr() oder StrReplace()-Makros enthalten sind.

Der NT-Command-Interpreter bietet jedenfalls NICHTS Brauchbares zur Stringmanipulation.

Ist leider so.
Grüße
Biber
Member: Biber
Biber Aug 03, 2006 at 18:40:56 (UTC)
Goto Top
Moin franc1967,

habe gerade beim Durchsehen der noch offenen Beiträge gelesen, dass wir ja gar nicht mehr von Win98 oder ME reden...

Bei Dir müsste doh auch schon das Ersetzen von Teilstrings in Variablen Bestandteil des ausgelieferten CMD-Interpreters sein, oder irre ich mich damit?

Dann ginge es doch genau wie heute mit folgendem Beispiel
(=18:52:42  D:\temp=)
>set thisIP=100.010.020.030

(=20:38:08  D:\temp=)
>echo %thisIP% %thisIP:.0=.%
100.010.020.030 100.10.20.30

Oder hast Du gar schon eine andere Lösung?

Gruß
Bber