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

Doppelte IP Adressen herausfiltern

Frage Entwicklung Batch & Shell

Mitglied: BlackFire

BlackFire (Level 1) - Jetzt verbinden

12.03.2011, aktualisiert 18.10.2012, 3967 Aufrufe, 11 Kommentare

Ich habe ein TXT-File mit folgendem Muster:

Bert - 192.168.0.1
Abert - 168.64.6.484
Poopd - 648.215.49.41
la - 645.845.285.1
Bla - 584.456.6.57
Blebbel - 456.678.64.257
idn - 357.549.25.1
klasfglj - 349.64.6.468
meivr - 46.359.46.168
ksdje - 135.484.0.1
asie - 168.64.6.484
nasdff - 648.215.49.41


Als Ziel bräuchte ich ein File, dass nur die Zeilen enthält, deren IP-Adressen mehrfach vorkommen:

nasdff - 648.215.49.41
Poopd - 648.215.49.41
---
Bert - 192.168.0.1
Abert - 168.64.6.484
la - 645.845.285.1
Bla - 584.456.6.57
Blebbel - 456.678.64.257
idn - 357.549.25.1
klasfglj - 349.64.6.468
meivr - 46.359.46.168
ksdje - 135.484.0.1
asie - 168.64.6.484

Ich beiße mir daran gerade die Zähne aus. - Geschafft hätte ich es bereits, die Datei zu bereinigen, dass die doppelten Einträge rausfallen. Jetzt könne ich zwar die beiden Dateien vergleichen - aber es geht doch sicherlich optimaler? - Am optimalsten wäre eine Trennung (---) zwischen den doppelten Einträgen.

Für einen Tipp wäre ich euch sehr dankbar.
Mitglied: StefanKittel
12.03.2011 um 11:37 Uhr
Moin,

wie hast/willst Du das denn machen?
Per Batch? Dann bitte bastla fragen.

Mit Excel oder Access ist es einfach(er).

Stefan
Bitte warten ..
Mitglied: bastla
12.03.2011 um 13:39 Uhr
Hallo BlackFire und willkommen im Forum (ja, die meisten hier nehmen sich Zeit für eine kurze Begrüßung)!

Wenn Du bereits eine Liste mit den Unikaten hast, würde im Prinzip schon einmal
findstr /v /g:"Unikate.txt" "Alle.txt"
genügen, um die "restlichen" Zeilen zu erhalten.

Etwas geordneter (und mit den gewünschten Trennlinien), allerdings langsamer, ließe sich das auch etwa so machen:
01.
@echo off & setlocal 
02.
set "Liste=Alle.txt" 
03.
set "Doppelte=Doppelte.txt" 
04.
 
05.
set "Trennen=" 
06.
type nul>"%Doppelte%" 
07.
for /f "usebackq tokens=2 delims=-" %%i in ("%Liste%") do ( 
08.
    for /f %%a in ('find /c "%%i"^<"%Liste%"') do ( 
09.
        if %%a gtr 1 findstr /c:"%%i" "%Doppelte%">nul || ( 
10.
            if defined Trennen echo --- 
11.
            findstr /c:"%%i" "%Liste%" 
12.
            set Trennen=True 
13.
        )>>"%Doppelte%" 
14.
15.
)
Grüße
bastla

P.S.:
... - aber es geht doch sicherlich optimaler? - Am optimalsten wäre eine Trennung (---) zwischen den doppelten Einträgen.
Eigentlich ist nur Chuck Norris das Steigern von "optimal" erlaubt ...
Bitte warten ..
Mitglied: TsukiSan
12.03.2011, aktualisiert 18.10.2012
...oder - wenn's VBS sein darf - hier Bastlas Script direkt anwenden.
er hat doch auch Wochenende!!!


Gruss
Tsuki

[Edit]
da isser ja schon
[/Edit]
Bitte warten ..
Mitglied: bastla
12.03.2011 um 14:28 Uhr
[OT]
Hallo Tsuki!

Schön, dass Du Dir über mich Gedanken machen kannst - geht's Dir demnach gut?

Grüße
bastla
[/OT]
Bitte warten ..
Mitglied: Biber
12.03.2011 um 18:24 Uhr
[OT] Moin bastla,
Zitat von bastla:
P.S.:
Eigentlich ist nur Chuck Norris das Steigern von "optimal" erlaubt ...
Aber Chuck kann es nicht sein - der hat doch nur Antworten und keine Fragen

Grüße
Biber
[/OT]
Bitte warten ..
Mitglied: BlackFire
12.03.2011 um 19:20 Uhr
Guten Abend,
danke für die freundliche Begrüßung im Forum. Das Problem was dabei noch ist, dass er nach den Namen anscheinend geht.

Orginaler Auszug: (Namen und IP-Adressen von mir geändert.)

Name: gvdhsthg IP: 83.135.105.193 (15-2-2011) 20:14:20
Name: hthtghtt IP: 87.147.8.33 (15-2-2011) 20:14:45
Name: ghijt IP: 62.47.246.92 (5-3-2011) 19:45:18
Name: hhj IP: 84.141.133.137 (5-3-2011) 19:47:58
Name: gfgfgr IP: 84.156.252.7 (5-3-2011) 19:50:5
Name: rfüh IP: 91.51.201.228 (5-3-2011) 19:50:10
Name: test3 IP: 62.47.246.92 (5-3-2011) 19:50:25
Name: okok IP: 84.141.133.137 (5-3-2011) 19:52:19
Name: lalala IP: 87.142.55.12 (5-3-2011) 19:52:24
Name: bliebelu IP: 93.232.40.239 (5-3-2011) 19:52:44
Name: blablub IP: 190.201.229.199 (5-3-2011) 19:54:1
Name: test6 IP: 87.142.52.27 (5-3-2011) 19:54:3
Name: test3 IP: 84.141.133.137 (5-3-2011) 19:55:33
Name: test5 IP: 93.215.154.128 (5-3-2011) 19:55:46

Danke für eure große Mühe
Bitte warten ..
Mitglied: bastla
12.03.2011 um 19:38 Uhr
Hallo BlackFire!

So ganz kann ich Dir jetzt nicht folgen ...

Grüße
bastla

P.S.: Ich hoffe, Du bist nicht enttäuscht, aber: Ich würde das nicht Mühe, und schon gar nicht große, nennen ...
Bitte warten ..
Mitglied: BlackFire
12.03.2011 um 20:11 Uhr
Abend bastla,
beim ersten Beitrag sollte es nur ein Muster sein, wie die Textdatei ungefähr aussieht. Das Ganze soll dafür dienen, um zu schauen ob sich einer mit der gleichen IP-Adresse einen zweiten Account angelegt hat, um diesen schnellst möglichst sperren zu können. Man sollte dabei auch beachten das sich die IP-Adresse ändern kann, deswegen sollte man nur die ersten zwei stellen vergleichen. (Also 185.25.63.26, soll genauso als gleiches angezeigt werden wie: 185.25.96.36) Ich weiß ich habe es oben nicht gerade sehr gut beschrieben bzw. verkehrt beschrieben. War zu dieser Zeit stark im Stress. Ich bitte dies zu entschuldigen.
Das ist das Problem was ich nicht hinbekomme. Ich hoffe es ist verständliche beschrieben, wenn nicht sagt bitte Bescheid.
Bitte warten ..
Mitglied: bastla
12.03.2011 um 20:21 Uhr
Hallo BlackFire!

Dann etwa so:
01.
@echo off & setlocal 
02.
set "Liste=Alle.txt"  
03.
set "Doppelte=%Doppelte.txt" 
04.
 
05.
set "Trennen=" 
06.
type nul>"%Doppelte%" 
07.
for /f "usebackq tokens=4-5 delims=. " %%i in ("%Liste%") do ( 
08.
    for /f %%a in ('find /c "%%i.%%j."^<"%Liste%"') do ( 
09.
        if %%a gtr 1 findstr /c:" %%i\.%%j\." "%Doppelte%">nul || ( 
10.
            if defined Trennen echo --- 
11.
            findstr /c:" %%i\.%%j\." "%Liste%" 
12.
            set Trennen=True 
13.
        )>>"%Doppelte%" 
14.
15.
)
Grüße
bastla
Bitte warten ..
Mitglied: BlackFire
12.03.2011 um 20:27 Uhr
Abend bastla,

das Funktioniert wunderbar.
Vielen Dank für deine Hilfe.


Gruss

BlackFire
Bitte warten ..
Mitglied: TsukiSan
13.03.2011 um 14:24 Uhr
[OT]
Hallo bastla,

es geht immer weiter und weiter
Ich dachte mir nur, dass du nach der ganzen Woche voll mit Scripterei auch mal ein Päuschen
zu schätzen weißt.
Andererseits liebst du ja das Scripten.

Einen schönen Sonntag an alle - an dieser Stelle!

Gruss
Tsuki
[/OT]
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
SAN, NAS, DAS
gelöst QNAP TS-453U - drei IP-Adressen für iSCSI , SMB , Management (2)

Frage von caspi-pirna zum Thema SAN, NAS, DAS ...

SAN, NAS, DAS
QNAP Installationsproblem wenn der Client mehre statische IP-Adressen hat (6)

Erfahrungsbericht von StefanKittel zum Thema SAN, NAS, DAS ...

Sicherheit
Mirai-Botnetz: Dyn bestätigt Angriff von zig-Millionen IP-Adressen

Link von runasservice zum Thema Sicherheit ...

Ubuntu
gelöst Amavis Whitelist IP-Adressen

Frage von runasservice zum Thema Ubuntu ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

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

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...