Jump to content

Mit Batch Datei IP Adresse zuweisen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo,

 

einen DOS-Befehl kenne ich nicht. Du kannst mit dem Ressource-Kit direkt in die Registrierung schreiben. Wenn Du die Parameter des Dienstes änderst und den Dienst neu startest: VOILA. Beides kannst Du dann über ein Batch-File erledigen.

 

mfg Andreas

Geschrieben

hi!

 

FOR /F "eol= tokens=1" %%i in (C:\file.txt) do

 

wenn du zeilenweise ausliest...und hier ein space das ende der zeile kennzeichnet..kannst du natürlich ändern

in %%i steht dann dein "was auch immer"

 

weitere parameter:

skip=7 überstringen

tokens=1,2,3 kannst auch mehrere variablen auslesen..

delims=\. ..die durch dieses trennzeichen im textfile getrennt sind

 

hoff das hilft

lg

Geschrieben

Hi, ich habe einen Teil meiner Lösung einmal gepostet und hätte gerne von euch gewußt, ob das so funktioniert.

Was ich damit bezwecken will: In zwei verschiedenen Dateien stehen die Werte für eine IP Adresse und eine Subnetmask. Ich möchte mit hilfe einer Batch Datei deren Inhalt auslesen und vergleichen. Steht in der ersten Datei der Anfang der richtigen IP Adresse möchte ich testen ob in der zweiten Datei die richtige Subnetmask steht. Trifft dies zu sollen die Einstellungen der Netzwerkkarte geändert werden.

 

for /f %%a in (%systemroot%\%DATEI2%) do IF "169.254"=="%%a" do for /f %%b in (%systemroot%\%DATEI3%) do IF "255.255.0.0"=="%%b" do netsh interface ip set address name = "%NAME%" source = static addr = %IP% mask = %MASK%

 

for /f %%c in (%systemroot%\%DATEI2%) do IF "169.254"=="%%c" do for /f %%d in (%systemroot%\%DATEI3%) do IF "255.255.0.0"=="%%d" do netsh interface ip set address name = "%NAME%" gateway = %GATEWAY% gwmetric = 1

 

for /f %%e in (%systemroot%\%DATEI2%) do IF "169.254"=="%%e" do for /f %%f in (%systemroot%\%DATEI3%) do IF "255.255.0.0"=="%%f" do netsh interface ip set dns name = "%NAME%" source = static addr = %DNS%

 

for /f %%g in (%systemroot%\%DATEI2%) do IF "169.254"=="%%g" do for /f %%h in (%systemroot%\%DATEI3%) do IF "255.255.0.0"=="%%h" do netsh interface ip set wins name = "%NAME%" source = static addr = %WINS%

 

 

Ich hoffe ihr könnt trotz der ganzen variablen nachvollziehen was ich meine. Bei allen Zeilen sollen beide Text Dateien überprüft werden. In der ersten Zeile wird bei einer Übereinstimmung die IP Adresse und Subnetmask-, in der zweiten das Gateway-, in der dritten die IP für den DNS Server und in der vierten die Einstellungen für den WINS Server vorgenommen. (leider sind die Zeilen so lang das immer zwei Zeilen hier im Board einer Zeile im Batch Script )

Geschrieben
rem IP-Adresse auslesen und auf die ersten 7 Stellen kürzen
set IPADDR=xxx.xxx.xxx.xxx
for /f %%a in (%systemroot%\%DATEI2%) do set IPADDR=%%a
set IPADDR=%IPADDR:~0,7%

rem IP-Maske auslesen
set IPMASK=xxx.xxx.xxx.xxx
for /f %%a in (%systemroot%\%DATEI3%) do set IPMASK=%%a

rem Abfrage
if "%IPADDR%" == "169.254" (
  if "%IPMASK%" == "255.255.0.0" (
     netsh interface ip set address name = "%NAME%" source = static addr = %IP% mask = %MASK%
     netsh interface ip set address name = "%NAME%" gateway = %GATEWAY% gwmetric = 1
     netsh interface ip set dns name = "%NAME%" source = static addr = %DNS%
     netsh interface ip set wins name = "%NAME%" source = static addr = %WINS%
  )
)

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...