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

Doppelte (3,4,5-fache...) Zeilen aus csv datei entfernen

Mitglied: RichardB

RichardB (Level 1) - Jetzt verbinden

23.02.2009, aktualisiert 15:50 Uhr, 6622 Aufrufe, 5 Kommentare

Hallo Forum,

nachdem ich letztens hier tolle Hilfe bekommen habe stehe ich jetzt vor einem neuen Problem dass ich leider nicht alleine gelöst bekomme:

Ich habe eine CSV Datei mit folgenden Aufbau:

7.87815,49.171267,"S3W0QA"
7.7283,49.086917,"S4W0QA"
7.602317,49.108617,"S5W0QA"
7.761333,49.256583,"S6W0QA"
7.87815,49.171267,"S3W0QA"
7.7283,49.086917,"S4W0QA"
8.106033,49.347967,"XXVZVG :Parkplatz Königsmühle"
7.602317,49.108617,"S5W0QA"
7.761333,49.256583,"S6W0QA"
7.87815,49.171267,"S3W0QA"
7.7283,49.086917,"S4W0QA"

Als Ergebniss sollte dies hier herauskommen:

7.87815,49.171267,"S3W0QA"
7.7283,49.086917,"S4W0QA"
7.602317,49.108617,"S5W0QA"
7.761333,49.256583,"S6W0QA"
8.106033,49.347967,"XXVZVG :Parkplatz Königsmühle"

Versucht habe ich dass zu lösen mit folgendem Batch:


FOR /f "tokens=1" %%f IN (acache.csv) DO call :ausgabe %%f
goto :eof
:ausgabe
find "%*" acache.csv || echo %*>>acacheneu.csv
goto :eof

Leider funktioniert dass ganze nicht es wird zwar eine Datei erstellt aber die doppelten Zeilen sind immer noch vorhanden...

Irgendwie möchte der Knoten nicht platzen..Währe toll wenn mir da mal jemand einen Tipp geben könnte.

Grüsse
RichardB
Mitglied: bastla
23.02.2009 um 16:42 Uhr
Hallo RichardB!

Das Problem sind die enthaltenen Anführungszeichen - diese musst Du für eine Suche mit einem vorangestellten "\" maskieren.

Der folgende Code setzt einen Satzaufbau aus 3 Feldern, von denen nur das letzte unter Anführungszeichen steht, voraus. Das Feldtrennzeichen ist als %Delim% festzulegen.

01.
@echo off & setlocal 
02.
set "Alt=acache.csv" 
03.
set "Neu=acacheneu.csv" 
04.
set "Delim=," 
05.
 
06.
if exist "%Neu%" del "%Neu%" 
07.
for /f "usebackq tokens=1-3 delims=%Delim%" %%a in ("%Alt%") do findstr "%%a%Delim%%%b%Delim%\"%%~c\"" "%Neu%">nul 2>nul || >>"%Neu%" echo %%a%Delim%%%b%Delim%%%c
Grüße
bastla

P.S.: Ohne die Berücksichtigung von Anführungszeichen hätte ein Oneliner direkt von der Kommandozeile genügt (zumindest, wenn es die Datei "acacheneu.csv " noch nicht gibt ):
FOR /f "delims=" %f IN (acache.csv) DO findstr "%f" acacheneu.csv>nul 2>nul || >>acacheneu.csv echo %f
Bitte warten ..
Mitglied: RichardB
23.02.2009 um 17:02 Uhr

Hallo Bastla,

Die " sind also schuld...da wäre ich nicht dahinter gekommen...

Vielen Dank für die schnelle Hilfe!!!

Grüsse
Richard
Bitte warten ..
Mitglied: bastla
23.02.2009 um 17:14 Uhr
Hallo RichardB!

Noch ein Nachtrag: Eigentlich sollte (auch wenn vermutlich die Wahrscheinlichkeit gering ist, dass eine Zeile zur Gänze in einer anderen enthalten ist) die gesamte Zeile verglichen werden - dazu wäre noch ein "/x" für das "findstr" nötig. Die Zeile "7 neu" sähe dann so aus:
for /f "usebackq tokens=1-3 delims=%Delim%" %%a in ("%Alt%") do findstr /x "%%a%Delim%%%b%Delim%\"%%~c\"" "%Neu%">nul 2>nul || >>"%Neu%" echo %%a%Delim%%%b%Delim%%%c
Grüße
bastla
Bitte warten ..
Mitglied: RichardB
23.02.2009 um 20:14 Uhr
Hallo bastla,

danke für den Hinweis...wenn ich dieses /x einsetze dann löscht er mir allerdings die Zeilen mit dem Langtext zwischen den " nicht...ohne /x löscht er einige kpl.

Ich kann da keine `Logik` drin sehen
Bitte warten ..
Mitglied: bastla
23.02.2009 um 20:25 Uhr
Hallo RichardB!

Als schwacher Trost: Mit den von Dir geposteten Beispieldaten gab es in dieser Hinsicht keine Probleme ...

Sind ev noch irgendwelche Sonderzeichen im Spiel?

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Doppelte Zeilen in Text-Datei löschen

gelöst Frage von reckheimBatch & Shell15 Kommentare

Hallo ich schreibe lange Übersetzungsprogramme in FoxPro in unten folgender Text-Datei-Form. Die Datei ist allerdings durch Zusammenführung verschiedener Versionen ...

Windows XP

Zeilen einer zusammengeführten CSV Datei über Batch ändern

Frage von NelspruitWindows XP12 Kommentare

Hallo zusammen, ich habe über batch ca. 1000 CSV Datein (Messdaten) zusammengeführt. Das Ganze schaut nun in der neuen ...

Batch & Shell

Doppelte Einträge mit Batch entfernen

gelöst Frage von Kugelschreiber15Batch & Shell8 Kommentare

Hallo Leute, bin grad dabei ein kleines Tool zu basteln und habe nun eine Frage! Ich suche mit Hilfe ...

Entwicklung

Zeile in CSV löschen

gelöst Frage von Alex1809Entwicklung3 Kommentare

Moin zusammen, in Zusammenhang mit Power Shell, stehe ich wieder vor einer Wand Ich brauche ein Code, welcher eine ...

Neue Wissensbeiträge
Sicherheit

Ungepatchte Remote Code Execution-Lücke in LG NAS

Information von kgborn vor 5 StundenSicherheit

Nutzt wer LG NAS-Einheiten? In den NAS-Einheiten der LG Network Storage-Einheiten gibt es eine sehr unschöne Schwachstelle, die einen ...

Windows Update

Neue Version KB4099950 NIC Einstellungen gehen verloren

Information von sabines vor 10 StundenWindows Update2 Kommentare

Es ist eine neue Version des KB4099950 verfügbar, die das Problem mit den verlorenen Netzwerkeinstellungen lösen soll. Das Datum ...

Microsoft Office

MS Office 2019 ohne OneNote - OneNote App speichert nur in Cloud

Information von Deepsys vor 21 StundenMicrosoft Office2 Kommentare

Microsoft zeigt deutlich wohin alles bei Ihnen geht, OneNote 2019 wird es nicht mehr geben, und die Windows 10 ...

Humor (lol)

Warum man sein Gast-WLAN nicht beliebig nennen sollte

Erfahrungsbericht von Henere vor 1 TagHumor (lol)5 Kommentare

Servus, mal was aus dem Alltag. Zu Hause. Eigentlich wollte ich nur einen weiteren WLAN-AP ins Netz bringen, damit ...

Heiß diskutierte Inhalte
Windows Netzwerk
LAN nur 10MB pro s trotz gb lan
Frage von tsunamiWindows Netzwerk21 Kommentare

Hallo zusammen, ich brauche mal wieder einen Anstoß in die richtige Richtung. Ich habe einen Windows 10 pc mit ...

Festplatten, SSD, Raid
Server SSD: NVMe PCIe 3.0 RAID?
Frage von bouneeFestplatten, SSD, Raid15 Kommentare

Hallo liebe Admins, mir stellt sich gerade die Frage, ob ein neuer Server mit SSD NVMe PCIe 3.0 Sinn ...

Sonstige Systeme
Wie Normenkataloge im Unternehmen bereit stellen?
Frage von MuzzepuckelSonstige Systeme14 Kommentare

Hallo Kollegen, ich lese schon lange hier mit, nun mein ersrer Beitrag, bzw. Frage. :-) Wir benötigen für unsere ...

Windows 10
Windows 10 Startmenü-Einstellungen Systemweit festlegen
Frage von flotautWindows 1013 Kommentare

Guten Morgen liebe Admins, wir möchten bei uns am Lehrstuhl demnächst auf Windows 10 umsteigen. Wir installieren unsere PC's ...