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, 8659 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
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Batch & Shell
gelöst Dateien mit Teil des Dateinamen per Batch in Unterordner verschieben (14)

Frage von smitternacht zum Thema Batch & Shell ...

IDE & Editoren
gelöst IP und DNS per Batch ändern (9)

Frage von andyw5 zum Thema IDE & Editoren ...

Batch & Shell
gelöst Batch um mehrere IP-Adressen via Ping auf Erreichbarkeit zu prüfen (5)

Frage von Galindiesel zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...

Windows Tools
gelöst Aussendienst Datensynchronisierung (12)

Frage von lighningcrow zum Thema Windows Tools ...