Supportnet Computer
Planet of Tech

Supportnet / Forum / BS-Sonstige

IP auslesen





Frage

Hallo, ich möchte die über DHCP vergebene IP auslesen und je nachdem wie sie ist eine Umgebungsvariable setzen. Die IP kann ich glaub ich aus der reg auslesen, aber was dann? Wie geht das mit den IF Anweisungen in batch dateien? beispiel: pc ip: 10.10.83.100 umgebungsvariable: Server=server01 pc ip: 10.10.99.50 umgebungsvariable: Server=server02 Grüsse Carsten

Antwort 1 von Undertaker

Hi,

ich vermute mal 2k oder XP als BS. Wie wäre es hiermit:

SETX SERVER .

ipconfig | findstr "IP-Adresse" >TMP.DAT
FOR /F "tokens=2,3,4 delims=:. " %%a IN (TMP.DAT) DO SET SUBNET=%%a.%%b.%%c
DEL TMP.DAT

IF "%SUBNET%" EQU "10.10.83" SET SERVER=server01 && SETX SERVER server01
IF "%SUBNET%" EQU "10.10.99" SET SERVER=server02 && SETX SERVER server02

SETX.EXE findest Du im Resource Kit von Windows 2000.

Die Benutzervariable SERVER ist erst in nachfolgend aufgerufenen Skripten verfügbar. Deshalb wird für die aktuelle Instanz die lokale Variable SERVER gesetzt. Außerdem läßt sich m.W. eine Benutzer- oder Systemvariable nicht mit SETX löschen, weshalb zum Anfang die Benutzervariable SERVER auf einen ungültigen Wert (.) gesetzt wird.

Gruß
Undertaker

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: