Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

teil-string einer ip rausfiltern per batch

Frage Microsoft

Mitglied: drobskind

drobskind (Level 1) - Jetzt verbinden

12.02.2007, aktualisiert 02.03.2007, 8689 Aufrufe, 6 Kommentare

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
Mitglied: miniversum
12.02.2007 um 16:03 Uhr
FOR /F "tokens=3 delims=." %%a in ('echo %ip%') do set raumnr=%%a
if %raumnr% lss 10 set raumnr=0%raumnr%
if %raumnr% lss 100 set raumnr=0%raumnr%

miniversum
Bitte warten ..
Mitglied: Biber
12.02.2007 um 16:06 Uhr
Moin drobskind,

im Batch am besten mit einer FOR/F-Anweisung.

01.
.... 
02.
REM Die IP steht in Variable %ip%... 
03.
for /f "tokens=3 delims=." %%i in ("%ip%") do Set "IP_Octet3=000%%i" 
04.
REM ... erst das dritte Oktett mit ein paar "0" vorweg speichern. 
05.
Set "IP_Octet3=%IP_Octet3:~-3%" 
06.
REM ...und davon die letzten 3 Stellen behalten... 
07.
ECHO Drittes Oktett = Raumnummer: %IP_Octet3% 
08.
---
HTH Biber
Bitte warten ..
Mitglied: drobskind
13.02.2007 um 08:04 Uhr
Danke euch beiden...
habe jetzt einfach mal den ersten code genommen (von miniversum) war schön klein
und er funktioniert so wie ich es mir vorgestellt habe...

auch einen grossen dank an Biber...
hab deinen code zwar noch nicht probiert aber sieht gut aus...
werde ihn heute nachmittag auch einmal in meine batch integrieren.

mfg
drobskind
Bitte warten ..
Mitglied: 44575
02.03.2007 um 18:00 Uhr
@drobskind:

Hi,
würde mich mal interessieren, mit welchem Batch genau Du die IP-Adresse herausbekommst.
Danke schon mal!

Daniel
Bitte warten ..
Mitglied: Biber
02.03.2007 um 18:11 Uhr
Moin Daniel337,

for /f "delims=: tokens=2" %%i in ('ipconfig ^|find "IP-A"') do set myIP=%%i

...wäre eine der Möglichkeiten im Batch.
Test am CMD-Prompt
for /f "delims=: tokens=2" %i in ('ipconfig ^|find "IP-A"') do @echo %i

Gruss
Biber
Bitte warten ..
Mitglied: 44575
02.03.2007 um 19:52 Uhr
Hallo Biber,

wow, das war ja eine schnelle Antwort.
Sieht gut aus, vielen Dank!

Daniel
Bitte warten ..
Neuester Wissensbeitrag
Exchange Server

WSUS bietet CU22 für Exchange 2007 SP3 nicht an. EOL Exchange 2007

Tipp von DerWoWusste zum Thema Exchange Server ...

Ähnliche Inhalte
Server
Webhosting mit NAS und dynamischer IP (2)

Frage von gugusus zum Thema Server ...

Batch & Shell
gelöst Batch und Powershell (2)

Frage von michi-ffm zum Thema Batch & Shell ...

Batch & Shell
gelöst Mittels Batch eine Uhrzeit aus einer .txt auslesen und verabeiten (4)

Frage von Beatzler zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Exchange Server
Test-ActiveSyncConnectivity Error nach neuem Zertifikat (17)

Frage von Driphex zum Thema Exchange Server ...

Zusammenarbeit
Als Administrator im Großraumbüro (16)

Frage von Dopamin85 zum Thema Zusammenarbeit ...

Batch & Shell
gelöst Batch xls nach aktuellem Datum auslesen und email senden (14)

Frage von michi-ffm zum Thema Batch & Shell ...

Hyper-V
HYPER V und USB (14)

Frage von Hendrik2586 zum Thema Hyper-V ...