Befehl: fc

  FC vergleicht zwei Dateien oder Dateisätze, im Text- oder Binärmodus
  und zeigt die Unterschiede zwischen ihnen an.

Syntax:

  FC [Schalter] [Laufwerk1:][Pfad1]Dateiname1 [Laufwerk2][Pfad2]
     Dateiname2 [Schalter]

Optionen:

  /A    Zeigt nur die erste und letzte Zeile jedes Unterschiedssatzes an.
  /B    Führt einen Binärvergleich durch.
  /C    Groß-/Kleinschreibung ignorieren.
  /L    Vergleicht Dateien als ASCII-Text.
  /LBn  Setzt die maximale Anzahl aufeinanderfolgender unterschiedlicher
        ASCII-Zeilen auf n.
  /Mn   Setzt die maximalen Unterschiede im Binärvergleich auf n Bytes
        (Standard: 20, 0 = unbegrenzt, /M = /M0).
  /N    Zeigt die Zeilennummern bei einem Textvergleich an.
  /Q    Zeigt die Liste der Unterschiede nicht an.
  /R    Zeigt einen kurzen Abschlussbericht an (immer aktiv bei Verwen-
        dung von /S).
  /S    Erweitert den Scan auf Dateien in Unterverzeichnissen.
  /T    Wandelt Tabulatoren nicht in Leerzeichen um.
  /U    Zeigt die Dateinamen der Dateien ohne Entsprechung an.
  /W    Leerzeichen (Tabulatoren und Leerzeichen) für den Textvergleich
        komprimieren.
  /X    Zeigt keine Kontextzeilen im Textvergleich an.
  /nnn  Setzt die Mindestanzahl aufeinanderfolgender übereinstimmender
        Zeilen auf nnn. Für die Vergleichsresynchronisierung.
  /? Zeigt die Hilfe an.

Kommentar:

  FC ist LFN-kompatibel und verwendet diese automatisch, sofern das
  Betriebssystem lange Dateinamen unterstützt.
  FC verwendet standardmäßig  bei Dateien mit den Dateinamen .EXE, .COM,
  .SYS, .OBJ, .BIN, .DLL und .LIB den Binärmodus.
  Im Binärmodus zeigt FC den Offset der abweichenden Bytes in der Datei,
  ihren hexadezimalen Wert und, falls es sich um druckbare ASCII-Zeichen
  handelt, deren ASCII-Zeichen an.
  Standardmäßig stoppt der Binärvergleich nach 20 Differenzen, dieser
  Wert kann jedoch mit dem Schalter /M geändert werden. /M0 bedeutet
  "unbegrenzte Differenzen". /M wird als /M0 interpretiert.
  Eine Designbeschränkung dieses Programms besteht darin, dass beim
  Dateivergleich im Textmodus nur die ersten 32765 Zeilen verglichen
  werden; die restlichen Zeilen werden ignoriert. Die Zeilenlänge ist
  praktisch unbegrenzt.

  FC unterstützt in den Dateispezifikationen Platzhalter. Einige Hinweise
  dazu:
  – Die Angabe eines Verzeichnisses entspricht der Angabe aller Dateien
    in diesem Verzeichnis (z. B. "*.*"), siehe Beispiel 1 unten.
  – Wenn kein Dateiname2 eingegeben wird, wird "." (das aktuelle Ver-
    zeichnis) angenommen, siehe Beispiel 2 unten.
  – Wenn Dateiname1 Platzhalter enthält, Dateiname2 jedoch nicht, werden
    alle Dateien, die mit Dateiname1 übereinstimmen, mit derselben Datei
    verglichen, siehe Beispiel 3 unten.
  – Wenn Dateiname1 Platzhalter enthält und Dateiname2 ein Pfad gefolgt
    von "*.*" ist, werden alle Dateien, die mit Dateiname1 überein-
    stimmen, mit den Dateien verglichen, die denselben Namen haben, sich
    aber im durch Dateiname2 angegebenen Pfad befinden (sofern diese
    Datei existiert), siehe Beispiel 4 unten.
  - Wenn Dateiname1 Platzhalter enthält und Dateiname2 ebenfalls, werden
    alle Dateien im Pfad von Dateiname1 und die mit Dateiname1 überein-
    stimmenden Dateien mit der entsprechenden Datei verglichen, die mit
    Dateiname2 im durch Dateiname2 angegebenen Pfad übereinstimmt (sofern
    diese Datei existiert). Siehe Beispiel 5 unten.

  Es ist leichter getan als gesagt. Wenn Sie wirklich jede Datei in einem
  Verzeichnis mit allen Dateien in einem anderen vergleichen möchten,
  können Sie immer das folgende Format verwenden:
    Beispiel 6: FC *.* MYDIR\????????.???

  Die Option /S führt in beiden Pfaden dasselbe Suchmuster in den gleich-
  namigen Unterverzeichnissen aus.
    Beispiel 7: "FC /S C:*.TXT D:*.BAK"
  Angenommen, es existieren beispielsweise die Unterverzeichnisse C:\BUCH
  und D:\BUCH. Dieser Befehl vergleicht alle *.TXT-Dateien mit ihren 
  Sicherungskopien *.BAK in den aktuellen Verzeichnissen sowie alle
  BOOK\*.TXT-Dateien mit ihren Sicherungskopien BOOK\*.BAK.

  FC unterstützt NLS (National Language Support).
  FC hat folgende Beendigungswerte ERRORLEVEL /EXITCODES:
    0  Alle die Dateien sind identisch
    1  Mindestens ein Dateienpaar differiert
    2  Ungültiger Parameter in der Kommandozeile
    3  Datei nicht gefunden
    4  Fehler beim Datei(en) öffnen

Beispiel:

  (Erläuterungen siehe oben)
  Beispiel 1:
    "FC C:\ A:" ist identisch mit "FC C:\*.* A:*.*"

  Beispiel 2:
    "FC C:\FOO.TXT" ist identisch mit "FC C:\FOO.TXT .\*.*"

  Beispiel 3:
    "FC FOO.BK? FOO.TXT"
  Alle Dateien FOO.BK? werden mit FOO.TXT verglichen

  Beispiel 4:
    "FC *.* A:*.*" oder, kurz, "FC . A:"
  Alle Dateien im aktuellen Verzeichnis werden mit ihrer Kopie auf A:
  verglichen.

  Beispiel 5:
    "FC *.TXT OLDS\*.BAK"
    Alle Dateien im aktuellen Verzeichnis werden mit ihrer umbenannten
    Sicherungskopie (.BAK) im Unterverzeichnis OLDS verglichen.

  Beispiel 6: (siehe oben)
    FC *.* MYDIR\????????.???

  Beispiel 7:
    "FC /S C:*.TXT D:*.BAK"

  Beispiel 8:
  FC /L /M0 C:\ foo.txt D:\foo.txt

Siehe auch:

  comp
  diskcomp
  doslfn
  errorlevel / exitcode
  md5sum

  Copyright © 1999 Maurizio Spagni, Hilfeversion aktualisiert 2022
  und 2025 von W. Spiegl.

  Diese Datei ist abgeleitet vom FreeDOS Spezifikationen-HOWTO.
  Vgl. auch die Datei H2Cpying bezüglich der Kopierbedingungen.