hackepetra
Goto Top

Doppelte Dateien anhand eines Teilstring des Dateinamens finden

Hallo zusammen,

ich habe mir schon viele Tools angesehen, die über mehrere Dateien eines Ordners inkl. Unterordner in der Lage sind doppelte Dateien aufgrund des Dateinamens aufzuspüren. AllDup, searchmyfiles, Filelocator, TotalCommander, Notepad++ etc., aber keines scheint mein spezielles Problem lösen zu können oder ich habe schlichtweg etwas übersehen.

Vielleicht kann mir jemand bei der Lösung folgendes Problem behilflich sein:

In einem Ordner c: \Temp befinden sich mehrere hundert Dateien, z.B.

Beleg_4711_20231027.xml
Beleg_4812_20231027.xml
Beleg_4711_20231024.xml
Beleg_4711_20231026.xml
Beleg_4713_20231015.xml

Ich möchte über alle Dateien in dem Ordner diejenigen identifizieren, bei denen der String zwischen den beiden Unterstrichen identisch ist, d.h. für 4711 wären dies Datei 1, 3 und 4.
Hilfreich wäre eine eine weitergehende Möglichkeit, den gesamten Ordner um diese mehrfach vorkommenden Dateien zu bereinigen.

Hat dazu jemand vielleicht eine Idee?

Vielen Dank im Voraus.

Content-Key: 4141478800

Url: https://administrator.de/contentid/4141478800

Printed on: May 9, 2024 at 13:05 o'clock

Member: Pjordorf
Pjordorf Oct 27, 2023 at 19:17:13 (UTC)
Goto Top
Hallo,

Zitat von @Hackepetra:
Ich möchte über alle Dateien in dem Ordner diejenigen identifizieren, bei denen der String zwischen den beiden Unterstrichen identisch ist, d.h. für 4711 wären dies Datei 1, 3 und 4.
Hat dazu jemand vielleicht eine Idee?
ChatGPT kann auch dir helfen. face-smile
https://chat.openai.com/auth/login
In Deutsch und ohne Anmeldung/Registrierung
https://chatopenai.de/

PS: selbst ein MSDOS find (Konsolenfenster - find /?) kann das schon, musst nur die Platzhalter richtig setzen. Dann ists egal ob Batch, Shell, Powershell oder sonstige Windows Tools.

Gruß,
Peter
Mitglied: 7907292512
Solution 7907292512 Oct 27, 2023, updated at Oct 28, 2023 at 07:22:52 (UTC)
Goto Top
Unsere Suchfunktion hätte dir hunderte Skripte dazu geliefert die genau das tun, aber es ist Freitag da kann man das ja eh nicht erwarten ...
Powershell
Get-Childitem 'c:\temp' -File -Recurse -Filter *.xml | group {$_.Basename.split('_')[1]} | ? Count -gt 1 | %{$_.Group | select -skip 1 | remove-item -verbose}  
Bereinigt die Duplikate und lässt von diesen jeweils immer nur eine übrig.

Gruß Sid.
Member: Hackepetra
Hackepetra Oct 28, 2023 at 11:36:03 (UTC)
Goto Top
Hallo zusammen,

vielen Dank für Eure Hinweise / Lösungen.

VG