Jerome: Dateivergleich

Hallo, ich habe zwei Verzeichnisse mit jeweils Unterverzeichnissen. Wie kann ich prüfen, ob Dateien jeweils in beiden Unterverzeichnissen vorhanden sind. Der Inhalt muss nicht verglichen werden.

  1. n'Abend,

    ich habe zwei Verzeichnisse mit jeweils Unterverzeichnissen.
    Wie kann ich prüfen, ob Dateien jeweils in beiden Unterverzeichnissen vorhanden sind.
    Der Inhalt muss nicht verglichen werden.

    das ist noch zu unspezifisch.

    • Sollen alle Dateien aus Baum A auch im Baum B vorhanden sein und umgekehrt? Oder geht es darum, dass bestimmte Dateien in beiden Bäumen vorkommen?
    • Wenn der Dateiinhalt anscheinend egal ist - müssen die Metadaten wie Dateigröße, Berechtigungen bzw. Attribute und Änderungsdatum übereinstimmen? Oder reicht es, wenn einer der Zwillinge existiert, aber eine Größe von 0 Byte hat?
    • Von welcher Plattform reden wir? Windows? Linux? GUI oder Konsole?

    Vielleicht hat jemand eine Idee, wenn du die Bedingungen etwas einschränkst.

    Ich habe im Moment nur eine für den Fall, dass beide Verzeichnisbäume einschließlich der Metadaten identisch sein sollen: Mach von jedem der beiden Verzeichnisbäume ein rekursives Verzeichnislisting (dir /as in Windows, ls -alR in Linux; der a-Schalter sorgt in beiden Fällen dafür, dass alle Dateien gelistet werden, auch versteckte) und leite die Ausgabe in je eine Textdatei um. Vergleiche dann die beiden Textdateien mit diff.

    Immer eine Handbreit Wasser unterm Kiel
     Martin

    --
    Wenn ich den See seh, brauch ich kein Meer mehr.
    1. Hi,

      • Sollen alle Dateien aus Baum A auch im Baum B vorhanden sein und umgekehrt? Oder geht es darum, dass bestimmte Dateien in beiden Bäumen vorkommen?

      Eine Datei im Baum A muss auch im Baum B vorhanden sein und zwar im gleichen Unterverzeichnis. Alles andere (Größe 0 ....) ist irrelevant, d.h. nur die Dateinamen müssen übereinstimmen. Das Ganze in Windows 10.

        1. Hallo JürgenB,

          windiff löst sicherlich das Problem.

          Mein Lieblingsvergleicher, auch für Inhalte und 3-way Vergleiche, ist kdiff von Joachim Eibl, leider seit 6 Jahren nicht mehr gepflegt. Dafür pfeilschnell und - wie ich finde - sehr gut.

          Dateivergleichstools gibt's auch in Dateimanagern integriert, in Christian Ghislers Total Commander kann man dafür z.B. die "Synchronisieren" Funktion verwenden.

          Rolf

          --
          sumpsi - posui - obstruxi
        2. Hallo,

          wäre das was?

          https://docs.microsoft.com/de-de/troubleshoot/windows-client/shell-experience/how-to-use-windiff-utility

          Auf den ersten Blick nicht. Es werden ja hier wohl auch die Inhalte verglichen, oder kann man dies über Einstellungen unterdrücken? Bei einer großen Dateimenge und großen Dateien wäre der Inhaltsvergleich sehr zeitaufwendig. Ich weiß aber, dass wenn die Dateien an den beiden Orten vorhanden sind, dann sind sie identisch.

          1. Hallo Jerome,

            oh je…

            Dieses Programm behauptet, Teil von Windows 10 zu sein. Das UI ist aber eher noch Windows 3.1. Und nein, den Inhaltsvergleich kann man wohl nicht unterdrücken.

            Guck Dir mal KDiff an...

            Rolf

            --
            sumpsi - posui - obstruxi
      1. Eine Datei im Baum A muss auch im Baum B vorhanden sein und zwar im gleichen Unterverzeichnis. Alles andere (Größe 0 ....) ist irrelevant, d.h. nur die Dateinamen müssen übereinstimmen. Das Ganze in Windows 10.

        Habe kaum Ahnung von der Windows-Shell und mag sie auch nicht. Aber es gibt ja auch "Linux unter Windows". Kann ich echt nur empfehlen. Hier Debian, aber vermutlich egal, welche Distro:

        Damit würde ich dann zunächst mal das native "diff -qr dir1 dir2" probieren. Wenn das wirklich bei Dir ein Performanceproblem sein sollte: "find dir1 -type f > dir1.txt" und "find dir2 -type f > dir2.txt" gefolgt von diff dir1.txt dir2.txt.

        Das geht analog bestimmt auch irgendwie unter Win10 in der Powershell nativ, nur keine Ahnung wie ;-)

  2. Hello,

    ich habe zwei Verzeichnisse mit jeweils Unterverzeichnissen. Wie kann ich prüfen, ob Dateien jeweils in beiden Unterverzeichnissen vorhanden sind. Der Inhalt muss nicht verglichen werden.

    Ich empfehle den Total Commander von Ghisler

    Der ist auch frei nutzbar und seit 15(?) Jahren bewährt und immer weiterentwickelt.

    Glück Auf
    Tom vom Berg

    --
    Es gibt nichts Gutes, außer man tut es!
    Das Leben selbst ist der Sinn.
    1. Hallo TS,

      Der ist auch frei nutzbar

      , ist aber offiziell Shareware, die mit 37€ zu vergüten ist.

      Rolf

      --
      sumpsi - posui - obstruxi
      1. Hello,

        Der ist auch frei nutzbar

        , ist aber offiziell Shareware, die mit 37€ zu vergüten ist.

        Sollte man auch machen. Denn das Ding ist wirklich gut.

        Es fehlt mir nur die Funktion "Bei Messages, die die Ausführung anhalten, eMail an Admin". Denn 2TBytes-Sicherungen aka Updates dauern schon ein Weilchen. Da will man nicht die ganze Zeit auf den Bildschirm starren.

        Glück Auf
        Tom vom Berg

        --
        Es gibt nichts Gutes, außer man tut es!
        Das Leben selbst ist der Sinn.
        1. Hallo TS,

          dann hau Christian Ghisler doch darauf an. Er entwickelt das Ding ja immer noch weiter. Vielleicht gibt's ja schon etwas, worauf Du aufbauen kannst, oder er kann sowas einbauen. Dass er eine Mail schickt, ist vermutlich zu speziell, aber er könnte vorsehen, dass bei Messages ein Script aufgerufen wird und in diesem Script kannst Du dann tun, was Du tun musst. Vielleicht loggt er die Messages auch in eine Datei und Du kannst einen Filter schreiben, der diese Datei beobachtet.

          Was mir fehlt, ist das User Menü vom File Commander, womit ich eine Auswahlliste von Befehlen auf eine Funktionstaste legen kann. Darum bin ich immer beim File Commander geblieben… (den gips auch für Linux, aber die von Dir gewünschte Funktion ist da auch nicht drin, und Brian Havard fügt Änderungen seit 10 Jahren nur in homöopathischen Dosen hinzu)

          Rolf

          --
          sumpsi - posui - obstruxi
          1. Hallo,

            Was mir fehlt, ist das User Menü vom File Commander, womit ich eine Auswahlliste von Befehlen auf eine Funktionstaste legen kann. Darum bin ich immer beim File Commander geblieben…

            Was genau meinst du? Du kannst beim TC sowohl die Symbolleiste als auch Tastenkombinationen mit Befehlen belegen.

            Gruß
            Kalk

            1. Hallo Tabellenkalk,

              okay, dann kenne ich das Ding einfach zu wenig und habe es spontan nicht in der Hilfe entdeckt.

              Rolf

              --
              sumpsi - posui - obstruxi