maet79
Goto Top

Lokale IP-Adresse mit Batch-Script unter MSDOS 6.x auslesen und in eine Variabel setzen

Hallo zusammen!

Ich bin leider auf MS DOS 6.x nicht so fit und dachte, ich melde mich mal hier.

Ist es möglich, unter MS Dos 6.x die IP-Adresse des Clients (die, durch DHCP-Server vergeben) auszulesen und in eine Variabel zu setzen?

Es handelt sich hier um ein PXE-Bootimage, das unter MS-Dos 6.20 eine Netzwerkverbindung aufbaut. Nun sollte das Batch-Script die IP-Adresse des Clients auslesen können, damit via IP-Adresse das Subnetz des Clients bestimmt werden kann, damit der Client vom Fileserver desselben Subnetzes die Windows XP-Installationssource auf den Client kopiert.

Hat jemand von Euch sowas schon mal gemacht?

Danke für Antworten im Voraus!!!!

Gruss
Maet

Content-ID: 48788

Url: https://administrator.de/forum/lokale-ip-adresse-mit-batch-script-unter-msdos-6-x-auslesen-und-in-eine-variabel-setzen-48788.html

Ausgedruckt am: 23.12.2024 um 15:12 Uhr

Biber
Biber 15.01.2007 um 06:54:19 Uhr
Goto Top
Moin Maet79,

willkommen im Forum.
Hat jemand von Euch sowas schon mal gemacht?
Ich noch nicht. Darf ich trotzdem einen Vorschlag machen?

Danke für Antworten im Voraus!!!!
Ich hasse diese Floskel, ob mit oder ohne Ausrufungszeichen....
Mir ist es lieber, Du gibst hinterher eine (ehrliche) Rückmeldung der Form: "Hilft/Hilft nicht".

Meine ungetestete Skizze wäre:
::--------------snipp Dos6xGetIP.bat
@echo off
Echo echo off>IP-Adresse..bat
echo :start>>IP-Adresse..bat
echo if [%%1]==[.] SHIFT>>IP-Adresse..bat
echo if [%%1]==[.] goto start>>IP-Adresse..bat
echo if [%%1]==[:] Set myIP=%%2>>IP-Adresse..bat
echo if [%%1]==[:] goto :end>>IP-Adresse..bat
Ipconfig|find "IP-Adresse.">>IP-Adresse..bat  
echo :end>>IP-Adresse..bat
echo echo Variable MyIp: %%myIp%%>>Ip-Adresse..bat
IP-Adresse..bat
::--------------snapp Dos6xGetIP.bat

Voraussetzungen sind:
- Du hast eine "deutsche" IPConfig.exe mit der Rückgabe "IP-Adresse. . . (etc)".
Bei neudeutscher IPConfig muttu den Suchstring ersetzen durch "IP-Address".
- Du startest den Batch in einem Verzeichnis, in dem Du Schreibrechte hast.
Oder änderst den Pfad der "IP-Adresse..bat" auf "%temp%\IP-Adresse..bat"

Die IP steht dann in der Variablen %MyIP%.
...in der Theorie. Getestet habe ich es nicht...
HTH
Biber
Maet79
Maet79 20.11.2008 um 12:25:23 Uhr
Goto Top
etwas spät aber vielleicht kanns ja noch jemand brauchen face-wink...


Dos6xGetIP.bat

%RAMDRV%\ipconfig %RAMDRV%\net>%RAMDRV%\ipconfig.txt

ECHO %RAMDRV%\ipaddress.txt wird erzeugt
REM sucht die Zeile der IP Address raus und ersetzt Text "IP Address : " MIT "SET IPADDRESS="
%RAMDRV%\ipconfig %RAMDRV%\net|%RAMDRV%\xgrep -x .\*Address\.\*>%RAMDRV%\ipaddress.bat
%RAMDRV%\alter %RAMDRV%\ipaddress.bat "IP Address : " "SET IPADDRESS=">NUL

REM ERSETZEN DER fuehrenden null
%RAMDRV%\alter %RAMDRV%\ipaddress.bat ".0" ".">NUL
%RAMDRV%\alter %RAMDRV%\ipaddress.bat ".0" ".">NUL
REM ERSETZEN . DURCH BLANK
%RAMDRV%\alter %RAMDRV%\ipaddress.bat "." " ">NUL

REM setzen der VAR IPADDRESS
CALL %RAMDRV%\ipaddress.bat
ECHO @echo OFF >%RAMDRV%\setip123.bat
ECHO SET IP1=%%1>>%RAMDRV%\setip123.bat
ECHO SET IP2=%%2>>%RAMDRV%\setip123.bat
ECHO SET IP3=%%3>>%RAMDRV%\setip123.bat
ECHO SET IP4=%%4>>%RAMDRV%\setip123.bat
REM ERZEUGEN DEr VARIABLEN IP1 IP2 IP3 IP4
call %RAMDRV%\setip123.bat %IPADDRESS%