Top-Themen

Aktuelle Themen (A bis Z)

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 .txt Dateien auf Duplikate überprüfen und diese löschen

Mitglied: DaSilva

DaSilva (Level 1) - Jetzt verbinden

23.01.2009, aktualisiert 11:56 Uhr, 9300 Aufrufe, 7 Kommentare

Ich möchte mehrere Textdateien zu einer großen zusammenfügen und diese Datei dann auf Duplikate überprüfen.
Das Zusammenfügen klappt gut, das Überprüfen auf Duplikate nicht so.
Mit UltraEdit kann man zwar gut Duplikate löschen lassen, allerdings nicht nur aufgrund der ersten Spalten.
Beispiel:

Eintrag1 blub
Eintrag1
Eintrag1

Ergebnis:


Eintrag1 blub
Eintrag1

Es soll aber so aussehen:

Eintrag1

Es sollen also nur die Zeichen bis Spalte x überprüft werden und davon dann alle Duplikate gelöscht werden.
Hat jemand eine Idee wie das geht?
Danke.
Mitglied: NetWolf
23.01.2009 um 13:00 Uhr
Hallo,

wenn man wüste, warum das so gemacht werden soll, würde ich empfehlen, vorher den Inhalt der Dateien auf Dubletten zu prüfen.


Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)
Bitte warten ..
Mitglied: DaSilva
23.01.2009 um 13:18 Uhr
Jede einzelne Datei hat als Inhalt nur einzigartige Einträge.
Es handelt sich um regelmäßige Reports und da werden beim nächsten Report noch sehr viele Einträge vom vorherigen übernommen, da nicht geändert im Status.
Ich brauche jetzt eine Zusammenfassung aller bisherigen Reports in einer Datei ohne Duplikate und dabei sind mir nur die Einträge bis Spalte 20 wichtig.
Deswegen kann ich an der Ausgangssituation leider nichts ändern...
Bitte warten ..
Mitglied: NetWolf
23.01.2009 um 14:30 Uhr
ich würde die Dateien in eine Datenbank (z.B. Access oder Base) einlesen, auswerten, fertig


Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)
Bitte warten ..
Mitglied: bastla
23.01.2009 um 16:29 Uhr
Hallo DaSilva!

Soferne es nicht stört, dass im Ergebnis keine Leerzeilen enthalten sein werden, müsste folgender Batch genügen:
01.
@echo off & setlocal 
02.
set "Datei=D:\Report.txt" 
03.
set "Bak=.bak" 
04.
 
05.
move "%Datei%" "%Datei%%Bak%" 
06.
copy nul "%Datei%">nul 
07.
for /f "usebackq delims=" %%i in ("%Datei%%Bak%") do set "Zeile=%%i" & call :ProcessLine 
08.
del "%Datei%%Bak%" 
09.
goto :eof 
10.
 
11.
:ProcessLine 
12.
findstr /b /c:"%Zeile:~,20%" "%Datei%">nul || >>"%Datei%" echo %Zeile% 
13.
goto :eof 
Falls Du die Originalversion als Sicherung behalten möchtest (wird dann beim nächsten Batchlauf durch die dann aktuelle Datei überschrieben), die Zeile 8 durch das Voranstellen von "::" auskommentieren ...

Grüße
bastla
Bitte warten ..
Mitglied: DaSilva
23.01.2009 um 16:54 Uhr
Danke, scheint zu funktionieren. Leerzeichen bleiben auch drin.
Braucht zum Ende hin (von der Dateigröße her gesehen) ziemlich lange.
Kann man noch einen Status (etwa "processing line 342...") einbauen?
Bitte warten ..
Mitglied: bastla
23.01.2009 um 17:07 Uhr
Hallo DaSilva!

Wie schon erwähnt werden Leerzeilen übersprungen, alle anderen Zeilen werden allerdings gezählt:
01.
@echo off & setlocal 
02.
set "Datei=D:\Report.txt" 
03.
set "Bak=.bak" 
04.
set /a LineNo=0 
05.
 
06.
move "%Datei%" "%Datei%%Bak%" 
07.
copy nul "%Datei%">nul 
08.
for /f "usebackq delims=" %%i in ("%Datei%%Bak%") do set "Zeile=%%i" & call :ProcessLine 
09.
del "%Datei%%Bak%" 
10.
goto :eof 
11.
 
12.
:ProcessLine 
13.
set /a LineNo+=1 
14.
echo processing Line %LineNo% 
15.
findstr /b /c:"%Zeile:~,20%" "%Datei%">nul || >>"%Datei%" echo %Zeile% 
16.
goto :eof 
Dass es gegen Ende zäh wird liegt einfach daran, dass jede Zeile, bevor sie in die Ergebnisdatei geschrieben wird, zunächst in dieser Datei gesucht wird - wird sie nicht gefunden (was aber erst feststeht, wenn die gesamte Datei durchsucht wurde), kann sie geschrieben werden ...

Wären die Zeilen sortiert, müsste jede gelesene Zeile immer nur mit der letzten geschriebenen Zeile verglichen werden, was eine kürzere Laufzeit ermöglichen sollte, aber hier wohl nicht möglich sein dürfte ...

Grüße
bastla
Bitte warten ..
Mitglied: DaSilva
23.01.2009 um 23:05 Uhr
Super, danke

Wie soll ich bloß die restlichen Zeichen füllen?
Ah, geschafft ;)
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Batch datei zum duplikate löschen
gelöst Frage von M4xx-oneBatch & Shell5 Kommentare

Hallo Gemeinde ich hab ein problem ich möchte mittels batchdatei eine TXT datei aufräumen die datei hat folgende eintäge ...

Windows 7

Ordnerstrukturen vergleichen und Duplikate löschen

gelöst Frage von SarekHLWindows 71 Kommentar

Hallo zusammen, kennt jemand ein Programm, um zwei Ordnerstrukturen zu vergleichen und aus einer der beiden alle nach Name, ...

Batch & Shell

Duplikate löschen - funktioniert nicht...

Frage von UHU-sticBatch & Shell3 Kommentare

Hallo Ihr Admins, habe gemäß der Lösung von Biber vom 28.05.2009 um 08:29 Uhr : versucht Duplikate aus einer ...

Batch & Shell

Batch Datei um Dateinamen auf Duplikat mit anderer Dateiendung zu prüfen und falls nicht die Datei zu löschen

gelöst Frage von PCdummyBatch & Shell2 Kommentare

Hallo liebe Profis, wenn ich mal fotografieren gehe habe ich immer .CR2 Dateien und .jpg Dateien. Nun gehe ich ...

Neue Wissensbeiträge
Vmware
VMware Update für den ESXi 5.5 verfügbar
Information von sabines vor 16 StundenVmware

Nach dem ganzen Hickhack um Update mit Microcode Anpassungen und Rückzug, gibt es nun für den ESXi 5.5 ein ...

CPU, RAM, Mainboards

Meltdown und Spectre: Intel zieht Microcode-Updates für Prozessoren zurück

Information von keine-ahnung vor 19 StundenCPU, RAM, Mainboards5 Kommentare

Moin, extrem lutztig. Nur gut, dass ich noch nicht beim Probanden-Bingo mitgemacht habe :-) LG, Thomas

Router & Routing
PfSense als Addon auf QNAP
Information von magicteddy vor 1 TagRouter & Routing7 Kommentare

Moin, für Spielereien eine ganz nette Idee aber ich fürchte das soetwas auch als echte Firewall genutzt wird: In ...

Datenschutz

Teamviewer kommt für IoT-Geräte wie den Raspberry Pi

Information von magicteddy vor 1 TagDatenschutz1 Kommentar

Moin, jetzt werden IoT Geräte endgültig zur Wanze? Anscheinend kann man auf einem Dashboard seine Geräte visualisieren Ich stelle ...

Heiß diskutierte Inhalte
Netzwerkmanagement
Preis für Wartungsvertrag ok?
gelöst Frage von a-za-zNetzwerkmanagement26 Kommentare

Hallo! Mal ne Frage, weil ich mich mit dem akzeptablen Preis für einen Reaktionszeitvertrag nicht auskenne. Meine Firma hat ...

Windows Server
TEMP-Profile
gelöst Frage von Forseti2003Windows Server21 Kommentare

Guten Morgen, wer kennt sie nicht, die lieben Temporären Benutzerprofile, vorallem immer dann, wenn man sie am wenigsten braucht. ...

Multimedia & Zubehör
Welches Tablet für die Verkäufer?
Frage von Hendrik2586Multimedia & Zubehör15 Kommentare

Guten Morgen meine Lieben, vielleicht könnt ihr mir ja helfen. Es geht um unsere Außendienstmitarbeiter /Verkäufer. Sie sollen demnächst ...

Ubuntu
Ubuntu - Routing mit 2 Netzwerkkarten?
Frage von gabrixlUbuntu13 Kommentare

Hei Folgende Situation: Ich habe zwei virtuelle Maschinen: 1 - Server für DHCP, DNS und Routing - Netzwerkkarte 1: ...