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

IP-Bereich Position 2 und 3 ermitteln

Frage Entwicklung Batch & Shell

Mitglied: 58270

58270 (Level 1)

01.12.2007, aktualisiert 02.12.2007, 3581 Aufrufe, 4 Kommentare

Seid gegrüßt

Ich möchte gerne die 2. und 3. Position der lokalen IP-Adresse ermitteln und anschließend weiterverarbeiten.


z.B.

bei der IP 192.168.2.230

die 168 in eine variable speichern und die 2 in einer variable speichern. oder alternativ den teilstring 192.2 in einer variable speichern.

Warum ich das möchte? Ich möchte daraus gerne eine andere IP zusammen setzen. z.B. 10.192.2.101

Habt ihr eine idee wie ich das realisieren kann?


vielen dank über jede anregung wäre ich dankbar.

greets Andy
Mitglied: Spackenbremse
01.12.2007 um 17:44 Uhr
Hallo.

versuchs doch mal mit

01.
SET ip=192.168.2.230 
02.
SET ip1=%ip:~0,5%
dann haste zumindest 192.1

wenn du dann

01.
SET ip=192.168.2.230 
02.
SET ip1=%ip:~0,3%
macht, griegste nur 192 raus.
Bitte warten ..
Mitglied: miniversum
01.12.2007 um 18:38 Uhr
Oder es geht auch so:
SET ip=192.168.2.230
FOR /F "tokens=1,2,3,4 delims=." %%a in ('echo %ip%') do set Teil1=%%a & set Teil2=%%b & set Teil3=%%c & set Teil4=%%d
echo Teil1=%Teil1%
echo Teil2=%Teil2%
echo Teil3=%Teil3%
echo Teil4=%Teil4%

miniversum
Bitte warten ..
Mitglied: bastla
01.12.2007 um 18:44 Uhr
Hallo ndugudagda und willkommen im Forum!

Zum Zerlegen von Texten eignet sich eine "for"-Schleife, da sie die Zerlegung in Einzelteile ("tokens") anhand von Trennzeichen ("delimiters", kurz: "delims") vornehmen kann - Beispiel (direkt an der Kommandozeile eingeben):
01.
for /f "tokens=1-4 delims=." %a in ("192.168.2.230") do @echo Teil2: %b und Teil 3: %c
Hier werden also 4 Bestandteile ermittelt und als %a, %b, %c und %d zur Verfügung gestellt. Das Trennzeichen "." fällt dabei weg.

Das funktioniert auch mit Variablen und auch in einem Batch (dann doppelte Prozentzeichen) und auch gezielt zB nur für die Teile 2 und 3:
01.
for /f "tokens=2-3 delims=." %%a in ("%IP%") do set IPNeu=10.%%a.%%b.101 
02.
echo %IPNeu%
Da hier bei Teil ("token") 2 begonnen wurde, erhält dieser die Variable %%a.

Grüße
bastla

[Edit] Weil ich auch immer so viel schwafeln muss ... [/Edit]
Bitte warten ..
Mitglied: 58270
02.12.2007 um 16:05 Uhr
Hallo und vielen Dank für die schnellen Antworten

Ich habe es jetzt wiefolgt gelöst:

@echo off

for /F "tokens=13,*" %%i in ('ipconfig^|find "IP-Ad"') do set IP=%%j
REM echo %IP%

for /F "tokens=1-4 delims=." %%a in ("%IP%") do set IPNeu=10.%%b.%%c.101

echo %IPNeu%
pause

Funktioniert super

Schönen ersten Advent
Bitte warten ..
Ähnliche Inhalte
Router & Routing
gelöst Ansprechpartner: Public IP-Bereich mieten oder kaufen (13)

Frage von certifiedit.net zum Thema Router & Routing ...

Switche und Hubs
gelöst Netzwerk-Erweiterung mit 2.IP-Bereich und IP-Bereich für VOIP mit HP2530-Stack (2)

Frage von Quincy25 zum Thema Switche und Hubs ...

Router & Routing
gelöst Zugriff auf NAS in anderem IP-Adress Bereich (12)

Frage von Torstenhof zum Thema Router & Routing ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(12)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Heiß diskutierte Inhalte
Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (28)

Frage von FA-jka zum Thema Windows 10 ...

LAN, WAN, Wireless
Brauche Hilfe: Mit (schnellem) WLAN Strecke überbrücken (23)

Frage von pierrehansen zum Thema LAN, WAN, Wireless ...

LAN, WAN, Wireless
Komplett neues Netzwerk, Ubiquiti WLAN, Router, Switch (15)

Frage von Freak-On-Silicon zum Thema LAN, WAN, Wireless ...

Backup
Backup Wochen- Monats- Jahressicherung (13)

Frage von Meterpeter zum Thema Backup ...