FC         Porównuje dwa zbiory lub dwie grupy zbiorów

 

POSTAĆ:                                                      TYP: ZEWNĘTRZNY

 

 FC [/A][/C][/L][/Lb n][/N][/T][/W][/nnn] zbiór1 zbiór2   - tekstowo (znakowo)

 FC [/B] zbiór1 zbiór2                                    - binarnie

 

ZNACZENIE: FC porównuje  pierwszy  wyszczególniony  zbiór  (zbiory)  z

           drugim, wyświetlając raport  o  każdej  napotkanej  różnicy

           między nimi.

           UWAGA: Porównywane zbiory mogą być o różnych  wielkościach.

                  Komenda  COMP   porównuje  zbiory  o  takich  samych

                  rozmiarach.

 

 PARAMETRY:

 

 

  nazwa_zbioru1    Pierwszy porównywany zbiór, lub grupa zbiorów

  nazwa_zbioru2    Drugi    porównywany zbiór, lub grupa zbiorów

 

           /A      Skraca raport o błędach przy porównywaniu w trybie                 

                    i końcowa każdej grupy napotkanych różnic.

 

           /B      Wymusza porównywanie binarne, pliki porównywane są

                   bajt po bajcie i różnice wyświetlane w  następującej

                    postaci:

                   xxxxxxxx: yy zz

                   (gdzie: "xxxxxxxx"  jest  adresem  względnym  pary

                   bajtów licząc od początku pliku).  Adresem  począ-

                   tkowym jest 00000000, a "yy" i "zz" są wartościami

                   bajtów plików, odpowiednio:  "nazwa_ścieżki1" oraz

                   "nazwa_ścieżki2". Przełącznik /B przyjmowany  jest

                   automatycznie w przypadku  porównywania  plików  z

                   rozszerzeniem .EXE, .COM, .SYS, .OBJ, .LIB, .BIN

 

           /C      Powoduje jednakowe traktowanie liter małych i  du-

                   żych, wszystkie traktowane są jako duże.

 

           /L      Wymusza porównywanie plików w trybie ASCII,  prze-

                   łącznik przyjmowany jest automatycznie w przypadku

                   plików nie posiadających rozszerzenia .EXE,  .COM,

                   .SYS, .OBJ, .LIB, .BIN

 

           /Lb n   Ustawia rozmiar wewnętrznego bufora  na  n  linii.

                   Wartość standardowa wynosi 100. Porównywanie  zos-

                   taje przerwane w przypadku napotkania większej niż

                   n liczby kolejnych różniących się linii.

 

           /N      Wyświetla numery linii przy porównywaniu w  trybie

                   ASCII.

 

           /T      Nie powoduje zmiany znaków  tabulacji  na  spacje.

                   Domyślnie znaki tabulacji  traktowane    jako  8

                   spacji.

 

           /W      Powoduje kompresję znaków niewidocznych w  tekście

                   (znaków tabulacji i spacji). Wiele spacji występu-

                   jących obok siebie traktowanych jest  jako  jedna.

                   Należy zauważyć, że spacje nie    ignorowane  za

                   wyjątkiem występujących na  początku  i  na  końcu

                   linii.

 

           /nnnn   Określa liczbę  linii,  które  muszą  być  zgodne,

                   zanim napotkane zostaną  różnice  między  plikami.

                   Jeżeli  napotkana  liczba  zgodnych  linii  będzie

                   mniejsza, nastąpi sygnalizacja błędu porównania.

 

 

  Raport o błędach porównania:

 

         Raport  o   błędach  porównania   ma  następującą   postać:  dla

         pierwszego pliku zostaną wyświetlone wszystkie linie, w  których

         wystąpiły różnice, następnie zgodne w obu plikach.   Analogiczne

         informacje zostaną wyświetlone dla drugiego pliku.   Standardowo

         liczba linii, które  muszą być zgodne,  wynosi 2, lecz  można to

         zmienić przy pomocy przełącznika /nnnn.

 

  Ograniczenia porównywania:

 

         Podczas porównywania  zlecenie FC  używa dużego  obszaru pamięci

         (wystarczającego do  przechowania 100  linii).  Jeżeli  rozmiary

         plików są większe niż zakres dostępnej pamięci, porównywany jest

         jedynie  fragment  każdego  pliku  mieszczący  się  w   buforze.

         Porównywanie takie kończy się komunikatem:

 

            resynch failed. Files are too different.

 

         Dla plików binarnych o rozmiarach większych niż zakres dostępnej

         pamięci, porównywane są kolejne  ich fragmenty mieszczące się  w

         pamięci i raport o błędach ma postać opisaną powyżej.

 

 PRZYKŁADY:

 

 

            

  1. Pliki tekstowe

  =================

         Aby  porównać  pliki  tekstowe  MONTHLY.RPT  i SALES.RPT, należy

         napisać:

                 FC /A MONTHLY.RPT SALES.RPT

 

  2. Pliki binarne

  ================

         Jeżeli należy sprawdzić różnice występujące w plikach, które nie

         są plikami tekstowymi,  można w tym  celu użyć przełącznika  /B.

         Na przykład, aby porównać pliki zawierające programy PROFITS.EXE

         i EARNINGS.EXE należy napisać:

 

                 FC /B PROFITS.EXE EARNINGS.EXE

 

         Raport o błędach może wyglądać tak, jak poniżej:

 

               00000002: fc b6

               00000004: 12 14

               0000000e: 56 92

               00000012: e8 5c

               00000013: bb 7c

               00000014: 14 0e

               00000015: 0a 0d

               0000001e: 43 7a

               0000001f: 09 0a

               00000022: be e6

               000005e0: 00 61

               000005e1: 00 73

               000005e2: 00 73

               000005e3: 00 69

               000005e4: 00 67

               000005e5: 00 6e

               000005e6: 00 6d

               000005e7: 00 65

               000005e8: 00 6e

 

           fc: earnings.exe longer than profits.exe

 

         Jeżeli porównywane pliki okażą się identyczne, na ekranie pojawi

         się następujący komunikat:

 

           fc: no different encountered