guardianxt
Goto Top

Per Script einem Computernamen aus der Host eine IP zuweisen

Hallo ,
ich habe möchte gerne einem Computer mit der Variable %Computername% eine feste IP Adresse aus einer Hostdatei zuweisen.
Das klappt mit folgendem Script:

copy C:W2KWsystem32driversetchosts c:hosts.txt
findstr "%COMPUTERNAME%" C:hosts.txt > C:zeile.txt
FOR /F "" %%I in ('find " " C:eile.txt') do Set IP=%%I

del C:hosts.txt
del C:eile.txt

netsh interface set interface name = "Local Area Connection" newname = "HOSTLAN"
netsh interface ip set address "HOSTLAN" static %IP% 255.255.255.0 x.x.x.x 1 1

In der Hostdatei gibt es mehre Rechner die gleich beginnen z.B.

x.x.x.x Bla-2
x.x.x.x Bla-6
x.x.x.x Bla-61
x.x.x.x Bla-62

Das oben aufgeführte Script schmeißt mir bei dem Computernamen Bla-2 die richtige IP raus, nimmt aber wenn ich als Computernamen den Bla-6 nutze die letzte IP aller einträge die mit Bla-6 beginnen, also die IP von Bla-62 raus.

Ach ja und das ganze auch noch bei Windows 2K *g*

Vielen Dank im vorraus,

GuArDiAnXT

Content-Key: 60662

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

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

Member: Dani
Dani Jun 05, 2007 at 15:09:51 (UTC)
Goto Top
Hallo GuArDiAnXT,
das Problem ist, dass bei dir ein Parameter bei findstr fehlt.
Probiere es mal so:
...
findstr /L "%COMPUTERNAME%" C:hosts.txt > C:zeile.txt  
...
Ungeteste Skizze. Das /L sagt ihm, er soll nur Zeilen ausgeben, die exakt dem Suchstring entsprechen.
[Edit 05.06.2007 21:07]
Der Meister persönlich... face-smile Dann empfehle ich dir, dich an seine Lösungsidee zuhalten.


Gruß
Dani
Member: Biber
Biber Jun 05, 2007 at 19:05:29 (UTC)
Goto Top
Moin G.,

ich würde es so lösen:
...
FOR /F "" %%I in ('findstr /i"%COMPUTERNAME%$" C:hosts.txt') DO Set IP=%%I  
...
...statt der bisherigen zwei Zeilen von "Findstr...." bis "....Set IP=%%I".

Teste es vorher am CMD-Prompt.
Findstr "%COMPUTERNAME%$" c:\hosts.txt
sollte die richtige Zeile bringen, da
  • das "/i" Klein/Groß-Unterschiede toleriert und
  • das "$" dafür sorgt, dass nur am Ende der Zeile gesucht wird.

Ebenfalls ungetestete Skizze.

Gruss
Biber