Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

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

Duplikate löschen - funktioniert nicht...

Frage Entwicklung Batch & Shell

Mitglied: UHU-stic

UHU-stic (Level 1) - Jetzt verbinden

29.09.2014 um 04:24 Uhr, 767 Aufrufe, 3 Kommentare

Hallo Ihr Admins,

habe gemäß der Lösung von Biber vom 28.05.2009 um 08:29 Uhr :

http://www.administrator.de/frage/mit-batchdatei-aus-einer-txt-alle-dop ...

versucht Duplikate aus einer Textdatei zu löschen.

Diese funktioniert auch super, solange
- entweder keine Duplikate in meiner Textdatei sind oder
- mindestens eine Textzeile abweichend ist.

Sobald die Datei aber ausschließlich aus Duplikaten besteht, funktioniert es nicht...

Datei könnte also sein:
11111111
11111111
22222222
22222222
33333333
33333333

Und diese sieht nach dem Skript nach der Lösung von Biber immer noch genauso aus...
11111111
11111111
22222222
22222222
33333333
33333333

Nach meinem Verständnis müsste ich jedoch eine 0kB Datei (also eine leere Datei) bekommen

Kann mir da jemand auf die Sprünge helfen?

Gruß

UHU-stic

PS Die Lösung von LotPings 28.05.2009 um 11:01 Uhr habe ich nicht nachvollziehen können und diese somit aus meiner Bewertung ausgenommen
Mitglied: Lochkartenstanzer
29.09.2014, aktualisiert um 09:30 Uhr
Moin,

sort test.txt  | tee test.txt.sort | uniq >test.txt.uniq ; diff test.txt.uniq  test.txt.sort | grep ">" | gawk -F "> " ' { print $2 } '  | sort -u >test.txt.double ;  grep -v -f test.txt.double -F test.txt | tee result.txt
Die "Einzeiler"-Lösung, die man auch unter windows z.B. mit cygwin nutzen kann.

Und ja, das Ergebnis sollte aufgrund der Aufgabenstellung "leer" sein. Wenn es das nicht ist, Hat das Skript vermutlich einen Fehler, wi z.B. Spezialfall nicht abgefangen oder so (Ich habe mir jetzt das ale Skript nicht angeschaut).

lks

PS: Umformattiert zum Dreizeiler

sort test.txt  | tee test.txt.sort | uniq >test.txt.uniq 
diff test.txt.uniq  test.txt.sort | grep ">" | gawk -F "> " ' { print $2 } '  | sort -u >test.txt.double 
grep -v -f test.txt.double -F test.txt | tee result.txt
Bitte warten ..
Mitglied: UHU-stic
30.09.2014 um 05:34 Uhr
Moinsen lks,

danke erstmal für die schnelle Antwort - die mir jedoch nur bedingt hilft (trotz des Hinweises auf das cygwin Projekt; sehr interessant, muss ich mir die Tage mal genauer anschauen)...

Herausforderung für mich bzw. die von mir angestrebte Lösung ist jedoch eine einfache Windows-Batch-Datei (also eben auch kein VBS o.ä.).

Jemand einen Tipp der sich auf die bereits beschriebene Lösung
http://www.administrator.de/forum/mit-batchdatei-aus-einer-txt-alle-dop ...
bezieht?

Sicher ist da genau das von lks geschriebene "Spezialfall nicht abgefangen" der Fall...

Gruß

UHU-stic
Bitte warten ..
Mitglied: Lochkartenstanzer
30.09.2014 um 07:11 Uhr
So auf die Schnelle würde ich einfah eine Dummy-Zeile anfügen und hinterher wieder löschen., damit der Sonderfall umgangen wird.

Lks
Bitte warten ..
Ähnliche Inhalte
Off Topic
gelöst Beitrag löschen (2)

Frage von PronMaster zum Thema Off Topic ...

Microsoft Office
gelöst Microsoftaccount löschen (3)

Frage von Kroni99 zum Thema Microsoft Office ...

Netzwerkmanagement
Netzwerkschlüssel löschen (6)

Frage von craehe zum Thema Netzwerkmanagement ...

Neue Wissensbeiträge
Sicherheits-Tools

Trendmicro OSCE und das Fall Creators Update Win10 RS3

(3)

Information von Henere zum Thema Sicherheits-Tools ...

Microsoft Office

Text in Zahlen umwandeln

Tipp von logische zum Thema Microsoft Office ...

Erkennung und -Abwehr

Infineon TPMs unsicher! Bitlocker ggf. angreifbar

(4)

Information von Lochkartenstanzer zum Thema Erkennung und -Abwehr ...

Firewall

PfSense Repository für Version 2.3.x

(7)

Information von Dobby zum Thema Firewall ...

Heiß diskutierte Inhalte
Microsoft Office
ICH BIN AM ENDE MEINES IT-WISSENS ANGELANGT!!!! (38)

Frage von 134537 zum Thema Microsoft Office ...

Windows Server
gelöst Gruppenrichtlinie greift nicht zu! (23)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...