Ako porovnávať súbory pomocou príkazu FC v systéme Windows

Posledná aktualizácia: 27/02/2026
Autor: Isaac
  • Príkaz FC umožňuje porovnať jeden alebo viac súborov v systéme Windows v textovom, Unicode alebo binárnom režime a presne určiť ich rozdiely.
  • Vaše možnosti (/A, /B, /C, /L, /U, /W, /LBn, /nnnn, /N, /OFFLINE, /T) upravujú spôsob interpretácie a zobrazenia nezrovnalostí.
  • FC vracia výstupné kódy (0, 1 alebo 2), ktoré uľahčujú jeho integráciu do skriptov a automatizácií na overenie zmien.
  • Podporuje cesty, jednotky a zástupné znaky na porovnávanie dávok súborov a možno ho použiť v CMD aj PowerShell spustením fc.exe.

Porovnávanie súborov pomocou príkazu FC v systéme Windows

Ak pracujete so skriptami, správami, kódom alebo chcete jednoducho skontrolovať, či bol súbor upravený, príkaz Konzola Windows FC Je to jeden z tých diskrétnych, ale neuveriteľne užitočných zdrojov, o ktorých takmer nikto veľa nevie. Nemusíte nič inštalovať ani používať externé programy: je súčasťou samotného operačného systému a je pripravený na použitie z príkazového riadka alebo PowerShellu – môžete vidieť, ako Porovnajte texty a súbory v PowerShell alebo CMD.

V nasledujúcich riadkoch uvidíme Ako porovnávať súbory pomocou príkazu FC v systéme WindowsZahŕňa ponúkané režimy porovnávania (ASCII, Unicode a binárne), význam každého parametra v oficiálnej syntaxi spoločnosti Microsoft, interpretáciu výstupných kódov a niekoľko praktických príkladov pre každodenné použitie. Všetko je krok za krokom vysvetlené zrozumiteľným jazykom bez vynechania akýchkoľvek dôležitých technických detailov.

Čo je príkaz FC a na čo sa používa?

Príkaz FC (Porovnanie súborov) Je to nástroj príkazového riadka systému Windows, ktorý sa používa na porovnanie obsahu dvoch súborov alebo dvoch sád súborov a zobrazenie rozdielov medzi nimi. Je kompatibilný so systémom Windows 10, Windows 11, staršími verziami a serverovými vydaniami. Windows Server 2019, 2022 a novšie verzie.

Keď spustíte FC, systém analyzuje oba súbory a oznámi vám Sú identické, líšia sa a v čom sa líšia?V závislosti od zvolenej možnosti môže pracovať na úrovni textu (riadok po riadku), textu Unicode alebo na binárnej úrovni (bajt po bajte), takže sa prispôsobí súborom s obyčajným textom (Porovnanie súborov v programe Poznámkový blok), ako sú spustiteľné súbory, obrázky alebo iné binárne formáty.

Okrem toho vám FC umožňuje spresniť typ porovnania vďaka niekoľkým možnostiam: môžete Ignorovať veľké a malé písmená, ignorovať medzery, zobraziť čísla riadkovUmožňuje vám obmedziť počet po sebe idúcich rozdielov, ktoré dokáže interná vyrovnávacia pamäť spracovať, porovnávať súbory označené ako offline a mnoho ďalšieho. Je to oveľa flexibilnejšie, ako sa na prvý pohľad zdá.

Je dôležité poznamenať, že hoci ho možno vyvolať z PowerShellu, v tomto prostredí fc je alias cmdletu Format-CustomPreto, ak chcete použiť klasický nástroj na porovnávanie súborov, musíte explicitne zadať fc.exe namiesto len fc, aby sa zabezpečilo, že sa v ňom nachádza správny binárny súbor C:\WINDOWS\fc.exe.

Použitie príkazu FC na porovnanie súborov

Úplná syntax príkazu FC

Oficiálna syntax príkazu podľa pomoci systému Microsoft Windows zahŕňa dva hlavné spôsoby použitia: porovnávanie textov (ASCII alebo Unicode) y binárne porovnanieVšeobecný tvar je nasledovný:

fc /a ] <archivo1> <archivo2>

fc /b <archivo1> <archivo2>

V praxi to znamená, že môžete pridať jeden alebo viac modifikátorov pred názvy súborov uveďte parameter , aby ste upravili správanie FC. Parametre cesty a jednotky sú voliteľné, takže jednoducho zadajte názov súboru, ak sa nachádza v aktuálnom adresári; inak budete musieť zadať aj cestu alebo jednotku.

Klasická pomoc, ktorá sa zobrazí pri spustení fc /? V španielskom príkazovom riadku je syntax zhrnutá takto (formátovaná pre lepšie pochopenie):

FC ]
archivo1 archivo2
FC /B archivo1 archivo2

Vo všetkých týchto variáciách, súbor1 y súbor2 Tieto predstavujú prvý a druhý súbor (alebo vzory súborov), ktoré sa majú porovnať. Podporované sú aj zástupné znaky, ktoré umožňujú porovnávať celé skupiny súborov jedným príkazom.

Syntax príkazu FC v CMD

Význam každého parametra príkazu FC

Skutočný potenciál príkazu sa vyjasní, keď uvidíte, čo každá možnosť robí. Tieto funkcie sú podrobne opísané nižšie. všetky parametre rozpoznané súborom fc.exe tak, ako sa zobrazujú v dokumentácii spoločnosti Microsoft a vo vstavanej pomocnej funkcii.

Porovnávacie režimy

/A – Umožňuje zjednodušený režim výstupu pre porovnanie textu ASCII. Namiesto vypisovania všetkých riadkov, ktoré sa medzi týmito dvoma súbormi líšia, FC zobrazuje iba prvý a posledný riadok každej skupiny rozdielovJe to veľmi užitočné, keď sú k dispozícii veľké bloky zmien a nechcete, aby sa konzola zaplnila nekonečným textom.

  Čo sú útoky manipuláciou s WDAC a ako sa im brániť?

/B – Prvá sila binárne porovnávanie bajtov po bajtochV tomto režime sa po nájdení nezrovnalosti nevykonáva žiadny pokus o resynchronizáciu dátového toku; jednoducho sa pokračuje a zobrazuje každý zistený rozdiel. Toto je predvolený režim pre súbory s typicky binárnymi príponami, ako sú .exe, .com, .sys, .obj, .lib alebo .bin, aj keď explicitne nezadáte prepínač /B.

/L – Pokyn FC, aby vykonal Porovnanie ASCII riadok po riadkuvždy sa po zistení rozdielu pokúša o resynchronizáciu súborov. Toto je predvolený režim pre všetky súbory, ktoré sa nepovažujú za binárne (t. j. tie, ktoré nemajú spustiteľný súbor a podobné prípony spomenuté vyššie).

/U – Zmeňte správanie príkazu fc tak, aby sa so súbormi zaobchádzalo ako Textové súbory UnicodeTáto možnosť zabezpečí, že sa rešpektuje špecifické kódovanie (napríklad UTF-16) a že znaky nad rámec základného ASCII sa správne interpretujú.

Ovládanie veľkých písmen, medzier a tabulátorov

/C – Príkaz tak ignoruje rozdiely medzi veľké a malé písmenáAk sa zmení iba veľkosť písmen (napríklad „Hola“ oproti „HOLA“), riadky sa budú považovať za ekvivalentné a nebudú označené ako odlišné. Upozorňujeme, že to platí pre písmená, ale nie pre iné znaky.

/W – Znížiť a minimalizovať dôležitosť prázdne miestoTeda tabulátory a medzery. Keď riadok obsahuje dlhú postupnosť po sebe idúcich medzier alebo tabulátorov, FC ich bude považovať za jednu medzeru. Okrem toho, ak použijete /W, príkaz ignoruje počiatočné a konečné priestory každého riadku počas porovnávania, čo je skvelé pre skripty alebo texty, kde je odsadenie irelevantné.

/T – Zakáže automatickú konverziu tabulátorov na medzery. FC štandardne považuje tabulátory za medzery s prerušovačmi každých osem znakov, ale s prepínačom /T Tabuľky sa rešpektujú tak, ako sú.Toto je užitočné, keď je presné zarovnanie súčasťou zmysluplného obsahu.

Správa a synchronizácia interných vyrovnávacích pamätí

/LB – Upravte veľkosť interný vyrovnávací pamäť linky ktorý FC používa pri porovnávaní textových súborov. V predvolenom nastavení vám táto vyrovnávacia pamäť umožňuje spracovať až 100 rôznych po sebe idúcich riadkov. Ak dva porovnávané súbory majú viac ako 100 po sebe idúcich riadkov bez zhôd, program to považuje za súbory, ktoré sa od seba príliš vzdialili a prerušuje porovnávaniePomocou tohto parametra môžete zvýšiť alebo znížiť tento limit a zadať konkrétny počet riadkov namiesto 100.

/ – Uveďte, koľko po sebe idúce riadky sa musia zhodovať Po zistení nezrovnalosti FC považuje oba súbory za úspešne resynchronizované. Predvolená hodnota je 2. Ak po bloku rozdielov nájde menej ako nnnn po sebe idúcich identických riadkov, tieto riadky sa stále zobrazia ako súčasť rozdielov, pretože program predpokladá, že súbory zostávajú nezarovnané.

Možnosti offline prezerania a archivácie

/N – To spôsobuje line čísla Pri porovnávaní ASCII uvidíte vedľa obsahu aj skutočný riadkový odkaz každého súboru, čo je nevyhnutné, keď budete neskôr potrebovať daný súbor manuálne upraviť.

/VYP – FC štandardne preskakuje súbory, ktoré majú nastavený atribút „offline“. Táto možnosť informuje program, že Porovnať aj súbory označené ako offlinečo môže byť užitočné v prostrediach, kde sú dáta uložené na vzdialených miestach alebo v špeciálnych súborových systémoch.

Špecifikácia súboru a rýchla pomoc

Okrem vyššie uvedených možností je dôležité pochopiť, ako určiť súbory na príkazovom riadku. Časť syntaxe pozostávajúca z súbor1 y súbor2 definovať prvý a druhý súbor ktorý FC bude porovnávať. Môžete použiť celé cesty, relatívne cesty a v prípade potreby aj rôzne písmená jednotiek.

Príkaz tiež podporuje zástupné znaky: * y ?Ak do súboru file1 zahrniete hviezdičku alebo otáznik, FC porovná všetky súbory, ktoré zodpovedajú tomuto vzoru, so súborom alebo vzorom zadaným ako file2. A ak v súbore file2 použijete zástupný znak, nástroj použije ekvivalentný názov súboru1 dokončiť zostávajúci vzorec a určiť páry, ktoré by sa mali porovnať.

Nakoniec, modifikátor /? Nie je súčasťou porovnaní ako takých, ale skôr slúži na zobraziť vstavanú pomoc príkazu na príkazovom riadku. Spustiť fc /? Je to najrýchlejší spôsob, ako si skontrolovať syntax na vlastnom počítači, vždy v jazyku vašej inštalácie systému Windows.

  Oprava: Spustiteľný súbor antimalvérovej služby Nadmerné využitie RAM a CPU

Ako FC zobrazuje rozdiely medzi súbormi

Výstupný formát ponúkaný FC sa mierne líši v závislosti od toho, čo robíme. Porovnanie textu ASCII/Unicode alebo binárne porovnaniePochopenie tohto formátu vám pomôže rýchlejšie prečítať výsledky a nájsť potrebné informácie.

Pri štandardnom porovnávaní ASCII, po vykonaní príkazu, FC zvyčajne zobrazí prvý názov prvého súboru, za ktorým nasledujú riadky z daného súboru, ktoré sa líšia od druhého súboru. Potom sa zobrazí prvý riadok, ktorý sa opäť zhoduje v oboch súboroch, čo slúži ako bod opätovnej synchronizácie. Štruktúra sa potom opakuje s druhým súborom: jeho názov, rôzne riadky a prvý nasledujúci zodpovedajúci riadok.

Keď aktivujete binárny režim pomocou /BVeci sa však menia: každá nezrovnalosť je prezentovaná syntaxou tohto typu: \<XXXXXXXX: YY ZZ>, Hodnota XXXXXXXXX Je to relatívna hexadecimálna adresa (začínajúca 00000000), ktorá označuje pozíciu, kde sa našiel odlišný pár bajtov. Vedľa nej sú zobrazené YY y ZZ, čo sú hexadecimálne hodnoty nezhodných bajtov patriacich do súboru1 a súboru2.

Ak binárne porovnanie dosiahne koniec jedného zo súborov a druhý stále obsahuje dáta, FC to indikuje. jeden zo súborov je dlhší ako druhýAk sa však po analýze všetkého obsahu nezistí žiadny rozdiel, na obrazovke sa zobrazí správa, ako je táto. FC: no differences encounteredalebo jeho lokalizovaný ekvivalent, čím sa jasne uvádza, že oba súbory sú identické.

V režime ASCII sa FC spolieha na svoje interný buffer so 100 riadkami (pokiaľ ste ho neupravili pomocou /LBn) na čítanie a porovnávanie po blokoch. Ak sú súbory natoľko odlišné, že sa v danom bloku nedá nájsť zhoda, zobrazí sa správa „Opätovná synchronizácia zlyhala. Súbory sú príliš odlišné.“, čo znamená, že sa nepodarilo rozumným spôsobom znovu zarovnať dve textové sekvencie.

Ukončovacie kódy príkazu FC

Okrem textu, ktorý vidíte na obrazovke, je tu aj spustiteľný súbor fc.exe vráti ukončovací kód do operačného systému po jeho dokončení. Tento kód je mimoriadne dôležitý pri použití FC v rámci dávkových skriptov alebo automatizácií, pretože umožňuje robiť rozhodnutia na základe výsledku porovnania bez nutnosti manuálnej analýzy vráteného textu.

Tabuľka výstupných kódov je veľmi jednoduchá a zostáva konštantná:

  • 0 – Porovnávané súbory sú identickéNebol zistený žiadny rozdiel v obsahu.
  • 1 – Súbory sú rozdielnyMedzi súborom file1 a súborom2 je aspoň jeden rozdiel.
  • 2 – A chyba pri porovnávaníMôže to súvisieť s oprávneniami, neprístupnými súbormi, problémami s čítaním alebo neplatnými parametrami.

V dávkovom súbore, kde chcete overiť zmeny, môžete tieto kódy použiť s príkazmi ako AK CHYBA alebo podobné konštrukcie, takže skript sa správa tak či onak v závislosti od toho, či sa súbory zhodujú alebo nie.

Praktické príklady použitia FC

Keď pochopíme teóriu, najužitočnejšie je vidieť konkrétne príkazy, ktoré môžete vykonať Tieto príklady sa používajú pri každodennom porovnávaní súborov v systéme Windows. Sú založené priamo na oficiálnej dokumentácii a pomocníkovi systému Windows.

Porovnanie dvoch textových súborov v režime ASCII

Predstavte si, že máte dve správy, mesačne.rpt y predaj.rptA chcete vidieť, ako sa líšia, ale bez toho, aby ste zahltili obrazovku čiarami. Môžete použiť:

fc /a monthly.rpt sales.rpt

S voľbou /A bude FC zobrazovať iba prvý a posledný riadok každého bloku rozdielovčo robí výsledok oveľa čitateľnejším, keď sú zmeny rozsiahle.

Porovnávanie binárnych súborov (napr. dávkové skripty)

Ak vás zaujíma kontrola zmien na úrovni bajtov v dvoch dávkových súboroch, povedzme zisky.bat y zárobky.batV ideálnom prípade použite binárny režim:

fc /b profits.bat earnings.bat

Ak existujú rozdiely, uvidíte niečo ako niekoľko riadkov s rôznymi hexadecimálnymi adresami a pármi bajtov. Ak sa však dva súbory zhodujú na 100 %, FC vráti správu, ktorá to označuje. Neboli zistené žiadne rozdiely počas porovnávania.

Porovnajte všetky súbory .bat s referenčným súborom

Niekedy je užitočné porovnať niekoľko súborov naraz s novou verziou, ktorá slúži ako šablóna. Napríklad, ak chcete porovnať každý súbor .bat v aktuálnom adresári s nový.batMôžete použiť tento príkaz:

  Nastavenie a používanie režimu hosťa na Chromecaste

fc *.bat new.bat

FC prejde všetky súbory .bat v aktuálnom adresári, ktoré zodpovedajú vzoru, a porovná ich jeden po druhom so súborom new.bat, čím vám ukáže rozdiely medzi jednotlivými pármi.

Porovnajte súbory s rovnakým názvom na rôznych diskoch

Ďalšou pomerne typickou situáciou je kontrola, či sa súbory na disku C a disku D zhodujú, napríklad pri overovaní zálohy. Ak chcete porovnať všetky súbory .bat v koreňovom adresári disku C: s ich ekvivalentmi na disku D:, môžete zadať:

fc c:\*.bat d:\*.bat

V tomto prípade FC porovná každý dávkový súbor v koreňovom adresári C: so súborom, ktorý má rovnaký názov v koreni D:Ak chcete porovnať iba konkrétny súbor, stačí zadať jeho názov namiesto zástupného znaku *.bat.

Používanie FC v konzole Windows a v PowerShelle

Klasická príkazová konzola systému Windows, známa ako CMDPonúka ideálne prostredie na využitie príkazu FC, ale s malým rozdielom ho môžete použiť aj z PowerShellu. V CMD jednoducho otvorte okno (napríklad zadaním cmd v ponuke Štart) a vykonajte príkazy presne tak, ako je uvedené v predchádzajúcich príkladoch.

V PowerShelle, ako už bolo spomenuté, fc je alias cmdletu Format-CustomAby ste sa vyhli konfliktom a zabezpečili, že používate klasický porovnávač súborov systému Windows, musíte zadať fc.exe namiesto jednoducho fcOd tohto bodu zostáva syntax parametrov rovnaká ako v CMD.

Mnoho používateľov kombinuje FC s inými bežnými konzolovými príkazmi, ako napríklad CD (pre zmenu priečinkov), DIR (zobrazenie obsahu adresára), TREE (zobrazenie stromu podpriečinkov), MOVE o RENAME (na presúvanie alebo premenovanie súborov) a nástroje ako napr. HĽADAŤ vyhľadávať textové reťazce v jednom alebo viacerých súboroch.

Je úplne možné integrovať FC do zložitejších skriptov, ktoré vykonávajú zálohy, synchronizujú adresáre alebo overujú konfiguračné súbory. neboli upravené vzhľadom na pôvodnú šablónu, s využitím výhod ukončovacích kódov aj špecifických možností porovnania.

Zjednodušené varianty použitia FC a často používané možnosti

V niektorých školiacich materiáloch alebo poznámkach k hodinám sa bežne nachádza zjednodušená verzia syntaxe, ktorá zvýrazňuje iba najčastejšie používané možnosti. Veľmi bežná skratka je napríklad:

fc archivo1 archivo2

V tomto znázornení slúži /b na označenie binárne porovnanieAk sa tento parameter vynechá, predpokladá sa, že porovnanie je textového typu (predvolene ASCII alebo Unicode, ak je zadaný parameter /U). Súbor1 a súbor2 zostávajú názvami súborov, ktoré chcete porovnať.

Mnohé súhrny tiež uvádzajú ako kľúčové možnosti nasledujúce: /b pre porovnávanie bajt po bajte, /l pre porovnávanie riadok po riadku, /c pre porovnávanie bez rozlišovania malých a veľkých písmen a /s pre porovnávanie rekurzívne podadresáreTreba objasniť, že parameter /s nie je súčasťou oficiálnej syntaxe FC v systéme Windows (zvyčajne patrí k iným príkazom), ale niekedy sa uvádza vo všeobecných schémach porovnávania súborov alebo v poznámkach, ktoré kombinujú rôzne príkazy.

V každom prípade vždy použite vstavanú pomoc fc /? a oficiálna dokumentácia vám zabezpečí, že máte správny zoznam parametrov pre vašu verziu systému Windowsbez zámeny možností z iných príkazov s možnosťami z FC.

Vzhľadom na všetky vyššie uvedené informácie sa príkaz FC javí ako prekvapivo kompletný nástroj pre každého, kto potrebuje kontrolovať zmeny medzi súbormi v systéme Windows: umožňuje porovnávať súbory v textovom, Unicode alebo binárnom režime, upravovať spôsob spracovania medzier, veľkých písmen a tabulátorov, spravovať súbory offline, ovládať vyrovnávaciu pamäť a opätovnú synchronizáciu, interpretovať ukončovacie kódy v skriptoch a pracovať so vzormi a zástupnými znakmi pre celé dávky súborov, a to všetko bez použitia externých aplikácií a bez využitia nástroja integrovaného do samotného operačného systému.

Porovnajte dva texty a zistite rozdiely v PowerShell alebo CMD
Súvisiaci článok:
Ako porovnať dva textové súbory v PowerShell alebo CMD