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

Mehrere unbekannte IP-Adressen aus Text Datei in Variablen übernehmen.

Frage Entwicklung Batch & Shell

Mitglied: volker01

volker01 (Level 1) - Jetzt verbinden

25.04.2013 um 15:03 Uhr, 1451 Aufrufe, 6 Kommentare

Hallo,

ich möchte IP-Adressen aus IPconfig in Variablen übernehmen.

Die Liste habe ich mit findstr gefiltert.
Es bleibt übrig:
01.
   IPv4-Adresse  . . . . . . . . . . : 192.168.178.10(Bevorzugt)  
02.
   IPv4-Adresse  . . . . . . . . . . : 192.168.181.10(Bevorzugt) 
(Mit findstr bekomme ich (Bevorzugt) nicht weg.)
Die IP-Adressen sind im Vorfeld nicht bekannt, auch die Anzahl könnte variieren.

Wie bekommen ich die IP-Adressen in Variablen in der Form:
%%a.%%b.%%c.%%d ?

Vg Volker01
Mitglied: Noobstar0815
25.04.2013 um 15:17 Uhr
Würde sagen mit "set", kenn die genaue Syntax aber nicht dafür, müsstest du mit "set /?" raussuchen
Bitte warten ..
Mitglied: volkerw
25.04.2013 um 16:06 Uhr
Hallo Volker01,

so sollte das funktionieren -> Roh-Ips in Liste.txt und dann diesen Schritt ausfuehren:

FOR /f "delims=" %%I IN (Liste.txt) DO (
SET STR0=%%I
SETLOCAL EnableDelayedExpansion
SET STR1=!STR0:IPv4-Adresse . . . . . . . . . . : =!
SET STR2=!STR1:^(Bevorzugt^)=!
FOR /F "tokens=1-4 delims=." %%A IN ("!STR2!") DO @ECHO %%A %%B %%C %%D
ENDLOCAL
)

Gruss
VolkerW
Bitte warten ..
Mitglied: Endoro
25.04.2013, aktualisiert um 17:38 Uhr
Hallo Leute, €dit einmal kräftig schütteln:
01.
@echo off&setlocal  
02.
set "string=IPv4-Adresse  . . . . . . . . . . : 192.168.181.10(Bevorzugt) " 
03.
for /f "tokens=2-5delims=:(. " %%i in ("%string%") do set /a o1=%%i, o2=%%j, o3=%%k, o4=%%l 
04.
echo %o1%.%o2%.%o3%.%o4%

Gruss!
Bitte warten ..
Mitglied: volker01
25.04.2013 um 22:08 Uhr
Hallo VolkerW,

danke für Deine Rückemeldung. Dein Ansatz ist interessant.
(Auch wenn der Code momentan meinen Horizont übersteigt )
tokens=1-4 ergibt das Wort "IP-Adresse".
Ich habs mit try and error geändert:
tokens=11-14 ergibt:
: 192.168.178.10
: 192.168.181.10
Leer, Doppelpunkt, Leer habe ich noch nicht weg bekommen.
Das Ergebnis schreibe ich in eine eine neue Textdatei. ich erhalte damit eine IP-Liste.
Im Ergebnis benötige ich jeden IP-Bock jeder IP-Adresse als Variable.

Vg Volker01
Bitte warten ..
Mitglied: volkerw
26.04.2013, aktualisiert um 09:24 Uhr
Hallo Volker01,

in meinem ersten Vorschlag fehlt ein Leerzeichen hinter IPv4-Adresse, gemeiner Fehler, kaum zu sehen. Wenn du nur die Liste der IPs brauchst, kannst du dir die zweite FOR-Schleife sparen, so sieht's dann aus:

01.
@ECHO OFF 
02.
IF EXIST Liste2.txt DEL Liste2.txt 
03.
FOR /f "delims=" %%I IN (Liste.txt) DO ( 
04.
SET STR0=%%I 
05.
SETLOCAL EnableDelayedExpansion 
06.
SET STR1=!STR0:IPv4-Adresse  . . . . . . . . . . : =! 
07.
SET STR2=!STR1:^(Bevorzugt^)=! 
08.
ECHO !STR2!>> Liste2.txt 
09.
::FOR /F "tokens=1-4 delims=." %%A IN ("!STR2!") DO ECHO %%A %%B %%C %%D 
10.
ENDLOCAL 
11.
)
Noch einmal, zwischen Adresse und dem . müssen 2 Leerzeichen sein. So habe ich das eingefügt, doch "Vorschau erstellen" unterschlägt eins davon. Musst du also händisch hinzufügen, dann geht's.

Viel Erfolg
VolkerW

[Edit Biber] Codeformat. Macht es vielleicht leichter erkennbar. [/Edit]
Bitte warten ..
Mitglied: volker01
27.04.2013 um 00:37 Uhr
Hallo VolkerW,

danke für Deine Unterstützung, ja so geht's.
Das filtern einzelner Zeilen mache ich dann so:

01.
for /F "eol=? delims=?" %%i in (iplist.txt) do ( 
02.
  echo %%i 
03.
  goto EndeSchleife1 
04.
05.
  :EndeSchleife1 
06.
 
07.
for /F "skip=1 eol=? delims=?" %%i in (iplist.txt) do ( 
08.
  echo %%i 
09.
  goto EndeSchleife2 
10.
11.
  :EndeSchleife2
usw.

Vg Volker01
Bitte warten ..
Ähnliche Inhalte
LAN, WAN, Wireless
PfSense vergibt auf VLAN1 per DHCP IP-Adressen, auf VLAN2 nicht (2)

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

Windows Server
gelöst IIS- Feature Einschränkungen für IP-Adressen und Domänennamen fehlt (3)

Frage von Flinnigen1 zum Thema Windows Server ...

Neue Wissensbeiträge
Windows 10

Windows 8.x oder 10 Lizenz-Key aus dem ROM auslesen mit Linux

(6)

Tipp von Lochkartenstanzer zum Thema Windows 10 ...

Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(40)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Heiß diskutierte Inhalte
Windows 10
gelöst Windows 10 Home "Netzlaufwerk nicht bereit" (19)

Frage von Oggy01 zum Thema Windows 10 ...

DNS
gelöst Komplette TLD Überschreiben bzw eigene Definieren (10)

Frage von Herbrich19 zum Thema DNS ...

Exchange Server
gelöst RU 17 Exchange 2010 . Erfahrungen? (10)

Frage von keine-ahnung zum Thema Exchange Server ...

Datenbanken
gelöst MySQL Zeiterfassungs-Problematik (wer ist eingecheckt) (9)

Frage von NativeMode zum Thema Datenbanken ...