teil-string einer ip rausfiltern per batch
hallo,
wir haben in der schule einige räume mit tauschlaufwerken und homelaufwerk.
die ips werden anhand der raumnummern vergeben
dh. Raum 003 -> ip: 192.168.3.x tausch: \\serv-003
Raum 136 -> ip: 192.168.136.x tausch: \\serv-136
nun habe ich schon eine batch geschrieben die mir den login auf das tauschlaufwerk enorm vereinfacht... ich hätte es aber gern noch einfacher.
wie man sieht sind die tauschserver mit der vollen raumnummer angegeben.
leider kann ich in einer ip aber nicht 192.168.003.x schreiben sonder die 3 wird allein hingeschrieben.
wie kann ich denn jetzt möglichst einfach einen Filter basteln, der mir ebend genau diesen dritten teil der ip herrausfiltert, und für den fall, das die zahl nur 1 bzw 2- stellig ist noch nullen davorschreibt?
die abfrage nach der ip habe ich in die batch schon eingebaut und sie wird in einer variablen gespeichert.
kurz:
ip auslesen :192.168.3.29
in variable: %ip%
string aus variable rausfiltern: 3
string mit nullen auffüllen: 003
in variable: %raumnr%
danke
drobskind
wir haben in der schule einige räume mit tauschlaufwerken und homelaufwerk.
die ips werden anhand der raumnummern vergeben
dh. Raum 003 -> ip: 192.168.3.x tausch: \\serv-003
Raum 136 -> ip: 192.168.136.x tausch: \\serv-136
nun habe ich schon eine batch geschrieben die mir den login auf das tauschlaufwerk enorm vereinfacht... ich hätte es aber gern noch einfacher.
wie man sieht sind die tauschserver mit der vollen raumnummer angegeben.
leider kann ich in einer ip aber nicht 192.168.003.x schreiben sonder die 3 wird allein hingeschrieben.
wie kann ich denn jetzt möglichst einfach einen Filter basteln, der mir ebend genau diesen dritten teil der ip herrausfiltert, und für den fall, das die zahl nur 1 bzw 2- stellig ist noch nullen davorschreibt?
die abfrage nach der ip habe ich in die batch schon eingebaut und sie wird in einer variablen gespeichert.
kurz:
ip auslesen :192.168.3.29
in variable: %ip%
string aus variable rausfiltern: 3
string mit nullen auffüllen: 003
in variable: %raumnr%
danke
drobskind
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 51454
Url: https://administrator.de/contentid/51454
Ausgedruckt am: 22.11.2024 um 06:11 Uhr
6 Kommentare
Neuester Kommentar
Moin drobskind,
im Batch am besten mit einer FOR/F-Anweisung.
HTH Biber
im Batch am besten mit einer FOR/F-Anweisung.
....
REM Die IP steht in Variable %ip%...
for /f "tokens=3 delims=." %%i in ("%ip%") do Set "IP_Octet3=000%%i"
REM ... erst das dritte Oktett mit ein paar "0" vorweg speichern.
Set "IP_Octet3=%IP_Octet3:~-3%"
REM ...und davon die letzten 3 Stellen behalten...
ECHO Drittes Oktett = Raumnummer: %IP_Octet3%
---
HTH Biber
@drobskind:
Hi,
würde mich mal interessieren, mit welchem Batch genau Du die IP-Adresse herausbekommst.
Danke schon mal!
Daniel
Hi,
würde mich mal interessieren, mit welchem Batch genau Du die IP-Adresse herausbekommst.
Danke schon mal!
Daniel
Hallo Biber,
wow, das war ja eine schnelle Antwort.
Sieht gut aus, vielen Dank!
Daniel
wow, das war ja eine schnelle Antwort.
Sieht gut aus, vielen Dank!
Daniel