- Naredba FC omogućuje vam usporedbu jedne ili više datoteka u sustavu Windows u tekstualnom, Unicode ili binarnom načinu rada, precizno ukazujući na njihove razlike.
- Vaše opcije (/A, /B, /C, /L, /U, /W, /LBn, /nnnn, /N, /OFFLINE, /T) prilagođavaju način interpretacije i prikaza odstupanja.
- FC vraća izlazne kodove (0, 1 ili 2) koji olakšavaju njegovu integraciju u skripte i automatizacije radi provjere promjena.
- Podržava putanje, pogone i zamjenske znakove za usporedbu serija datoteka i može se koristiti i u CMD-u i u PowerShellu pozivanjem fc.exe.
Ako radite sa skriptama, izvješćima, kodom ili jednostavno želite provjeriti je li datoteka izmijenjena, naredba Windows konzola fc To je jedan od onih diskretnih, ali nevjerojatno korisnih resursa o kojima gotovo nitko ne zna puno. Ne morate ništa instalirati niti koristiti vanjske programe: uključen je u sam operativni sustav i spreman je za korištenje iz naredbenog retka ili PowerShella - možete vidjeti kako Usporedite tekstove i datoteke u PowerShellu ili CMD-u.
U sljedećim ćemo redovima vidjeti Kako usporediti datoteke pomoću naredbe FC u sustavu WindowsObuhvaća ponuđene načine usporedbe (ASCII, Unicode i binarni), značenje svakog parametra u službenoj Microsoftovoj sintaksi, kako interpretirati izlazne kodove i nekoliko praktičnih primjera za svakodnevnu upotrebu. Sve je objašnjeno korak po korak jasnim jezikom, bez izostavljanja važnih tehničkih detalja.
Što je FC naredba i za što se koristi?
Naredba FC (Usporedba datoteka) To je alat naredbenog retka sustava Windows koji se koristi za usporedbu sadržaja dviju datoteka ili dva skupa datoteka i prikaz razlika među njima. Kompatibilan je sa sustavima Windows 10, Windows 11, ranijim verzijama i serverskim izdanjima. Windows Server 2019, 2022 i noviji.
Kada pokrenete FC, sustav analizira obje datoteke i kaže vam Jesu li identični, razlikuju li se i na koje se načine razlikuju?Ovisno o odabranoj opciji, može raditi na razini teksta (redak po redak), Unicode teksta ili na binarnoj razini (bajt po bajt), tako da se prilagođava i običnim tekstualnim datotekama (Usporedite datoteke u Notepadu) kao što su izvršne datoteke, slike ili drugi binarni formati.
Osim toga, FC vam omogućuje da precizirate vrstu usporedbe zahvaljujući nekoliko opcija: možete Zanemari velika i mala slova, zanemari razmake, prikaži brojeve redakaOmogućuje vam ograničavanje broja uzastopnih razlika koje unutarnji međuspremnik može obraditi, usporedbu datoteka označenih kao izvan mreže i još mnogo toga. Mnogo je fleksibilnije nego što se na prvi pogled čini.
Važno je napomenuti da, iako se može pozvati iz PowerShella, u ovom okruženju fc je pseudonim cmdleta Format-CustomStoga, ako želite koristiti klasični alat za usporedbu datoteka, morate izričito upisati fc.exe umjesto samo fc, kako bi se osiguralo da se ispravna binarna datoteka nalazi u C:\WINDOWS\fc.exe.
Potpuna sintaksa FC naredbe
Službena sintaksa naredbe, prema pomoći za Microsoft Windows, uključuje dva glavna načina korištenja: usporedba teksta (ASCII ili Unicode) y binarna usporedbaOpći obrazac je sljedeći:
fc /a ] <archivo1> <archivo2>
fc /b <archivo1> <archivo2>
U praksi, to znači da možete dodajte jedan ili više modifikatora ispred naziva datoteka kako biste prilagodili ponašanje FC-a. Parametri putanje i pogona nisu obavezni, stoga jednostavno navedite naziv datoteke ako se nalazi u trenutnom direktoriju; inače ćete morati navesti i putanju ili pogon.
Klasična pomoć koja se pojavljuje prilikom pokretanja fc /? U španjolskom naredbenom retku, sintaksa je sažeta na sljedeći način (formatirana za bolje razumijevanje):
FC ]
archivo1 archivo2
FC /B archivo1 archivo2
U svim tim varijacijama, datoteka1 y datoteka2 Oni predstavljaju prvu i drugu datoteku (ili uzorke datoteka) koje treba usporediti. Podržani su i zamjenski znakovi, što omogućuje usporedbu cijelih grupa datoteka jednom naredbom.
Značenje svakog parametra FC naredbe
Pravi potencijal naredbe postaje jasan kada vidite što svaka opcija radi. To je detaljno opisano u nastavku. sve parametre koje prepoznaje fc.exe kako se pojavljuju u Microsoftovoj dokumentaciji i u ugrađenoj pomoći.
Načini usporedbe
/A – Omogućuje pojednostavljeni način izlaza za usporedbe ASCII teksta. Umjesto popisa svih redaka koji se razlikuju između dvije datoteke, FC prikazuje samo prvi i zadnji redak svake skupine razlikaVrlo je korisno kada postoje veliki blokovi promjena i ne želite da se konzola napuni beskonačnim tekstom.
/B – Sila jedan binarna usporedba bajt po bajtU ovom načinu rada ne pokušava se ponovna sinkronizacija toka podataka nakon što se pronađe odstupanje; jednostavno se nastavlja i prikazuje svaka otkrivena razlika. Ovo je zadani način rada za datoteke s tipično binarnim ekstenzijama kao što su .exe, .com, .sys, .obj, .lib ili .bin, čak i ako izričito ne navedete prekidač /B.
/L – Uputite FC da izvrši Usporedba ASCII koda redak po redakuvijek pokušava ponovno sinkronizirati datoteke nakon otkrivanja razlike. Ovo je zadani način rada za sve datoteke koje se ne smatraju binarnim (tj. one bez izvršne datoteke i sličnih ekstenzija spomenutih ranije).
/U – Promijenite ponašanje funkcije fc da tretira datoteke kao Unicode tekstualne datotekeOva opcija osigurava da se poštuje specifično kodiranje (kao što je UTF-16) i da se znakovi izvan osnovnog ASCII-ja ispravno interpretiraju.
Kontrola velikih slova, razmaka i tabulatora
/C – Zbog toga naredba ignorira razlike između velika i mala slovaAko se mijenjaju samo velika i mala slova (na primjer, "Hola" u odnosu na "HOLA"), retki će se smatrati ekvivalentnima i neće biti označeni kao različiti. Imajte na umu da se to odnosi na slova, ali ne i na druge znakove.
/W – Sažeti i minimizirati važnost prazan prostorTo jest, tabulatori i razmaci. Kada redak ima dugi niz uzastopnih razmaka ili tabulatora, FC će ih tretirati kao jedan razmak. Osim toga, ako koristite /W, naredba ignorira početni i završni prostori svakog retka tijekom usporedbe, što je izvrsno za skripte ili tekstove gdje uvlačenje nije bitno.
/T – Onemogućuje automatsku pretvorbu tabulatora u razmake. Prema zadanim postavkama, FC obično tretira tabulatore kao razmake s prekidima svakih osam znakova, ali s /T Tabelarni prikazi se poštuju kakvi jesuOvo je korisno kada je točno poravnanje dio smislenog sadržaja.
Upravljanje internim međuspremnikom i sinkronizacija
/LB – Prilagodite veličinu unutarnji linijski međuspremnik koji FC koristi pri usporedbi tekstualnih datoteka. Prema zadanim postavkama, ovaj međuspremnik omogućuje vam obradu do 100 različitih uzastopnih redaka. Ako dvije datoteke koje uspoređujete imaju više od 100 uzastopnih redaka bez podudaranja, program smatra da su se datoteke previše udaljile i prekida usporedbuPomoću ovog parametra možete povećati ili smanjiti tu granicu, navodeći određeni broj redaka umjesto 100.
/ – Navedite koliko uzastopni redovi moraju se podudarati Nakon neslaganja, FC smatra da je uspješno resinkronizirao obje datoteke. Zadana vrijednost je 2. Ako nakon bloka razlika pronađe manje od nnnn uzastopnih identičnih redaka, ti će se retci i dalje prikazivati kao dio razlika, jer program pretpostavlja da datoteke ostaju neusklađene.
Mogućnosti pregledavanja i arhiviranja izvan mreže
/N – To uzrokuje brojeve linija Prilikom izvođenja ASCII usporedbe, vidjet ćete, uz sadržaj, stvarnu referencu retka svake datoteke, što je bitno kada kasnije trebate ručno urediti dotičnu datoteku.
/ISKLJUČENO – Prema zadanim postavkama, FC preskače datoteke koje imaju postavljen atribut "offline". Ova opcija govori programu da Također usporedi datoteke označene kao izvan mrežešto može biti korisno u okruženjima gdje se podaci pohranjuju na udaljenim lokacijama ili posebnim datotečnim sustavima.
Specifikacija datoteke i brza pomoć
Uz gore navedene opcije, važno je razumjeti kako odrediti datoteke u naredbenom retku. Dio sintakse koji se sastoji od datoteka1 y datoteka2 definira prva i druga datoteka koji će FC usporediti. Možete koristiti pune putanje, relativne putanje i, ako je potrebno, različita slova pogona.
Naredba također podržava zamjenske znakove: * y ?Ako u datoteku file1 uključite zvjezdicu ili upitnik, FC će uzeti sve datoteke koje odgovaraju tom uzorku i usporediti ih s datotekom ili uzorkom navedenim kao file2. A ako koristite zamjenski znak u datoteci file2, alat će primijeniti ekvivalentni naziv datoteke1 dovršiti preostali uzorak i utvrditi parove koje treba usporediti.
Konačno, modifikator /? To nije dio usporedbi kao takvih, već služi za prikaži ugrađenu pomoć naredbe u naredbenom retku. Pokreni fc /? To je najbrži način za pregled sintakse na vlastitom računalu, uvijek na jeziku vaše Windows instalacije.
Kako FC prikazuje razlike između datoteka
Izlazni format koji nudi FC malo varira ovisno o tome što radimo. Usporedba ASCII/Unicode teksta ili binarna usporedbaRazumijevanje ovog formata pomoći će vam da brže pročitate rezultate i pronađete potrebne informacije.
U standardnoj ASCII usporedbi, nakon izvršavanja naredbe, FC obično prikazuje prvi naziv prve datoteke, nakon čega slijede retki iz te datoteke koji se razlikuju od druge datoteke. Zatim se pojavljuje prvi redak koji se ponovno podudara u obje datoteke, što djeluje kao točka ponovne sinkronizacije. Zatim se struktura ponavlja s drugom datotekom: njezino ime, različiti retci i prvi sljedeći odgovarajući redak.
Kada aktivirate binarni način rada s /BMeđutim, stvari se mijenjaju: svaka se razlika predstavlja sintaksom ovog tipa: \<XXXXXXXX: YY ZZ>, Vrijednost XXXXXXXXX To je relativna heksadecimalna adresa (koja počinje s 00000000) koja označava poziciju na kojoj je pronađen različiti par bajtova. Pored nje su prikazani YY y ZZ, što su heksadecimalne vrijednosti nepodudarnih bajtova koji pripadaju datoteci1 i datoteci2.
Ako binarna usporedba dođe do kraja jedne od datoteka, a druga još uvijek sadrži podatke, FC će to naznačiti jedna od datoteka je duža od drugeMeđutim, ako nakon analize cjelokupnog sadržaja ne otkrije nikakvu razliku, na zaslonu će se pojaviti ovakva poruka FC: no differences encounteredili njegov lokalizirani ekvivalent, čime je jasno da su obje datoteke identične.
U ASCII načinu rada, FC se oslanja na svoj unutarnji međuspremnik od 100 linija (osim ako ga niste izmijenili s /LBn) za čitanje i usklađivanje po blokovima. Ako su datoteke toliko različite da ne može pronaći podudaranje unutar tog bloka, prikazat će se poruka "Ponovna sinkronizacija nije uspjela. Datoteke su previše različite.", što ukazuje da nije uspio poravnati dva tekstualna niza na razuman način.
Izlazni kodovi FC naredbe
Osim teksta koji vidite na ekranu, izvršna datoteka fc.exe vraća izlazni kod operativnom sustavu kada završi. Ovaj kod je izuzetno važan pri korištenju FC-a unutar batch skripti ili automatizacija, jer vam omogućuje donošenje odluka na temelju rezultata usporedbe bez potrebe za ručnom analizom vraćenog teksta.
Tablica izlaznih kodova je vrlo jednostavna i ostaje konstantna:
- 0 – Datoteke koje se uspoređuju su identičanNije pronađena razlika u sadržaju.
- 1 – Datoteke su drugačijiPostoji barem jedna razlika između datoteke1 i datoteke2.
- 2 – A greška prilikom usporedbeMože biti povezano s dozvolama, nedostupnim datotekama, problemima s čitanjem ili nevažećim parametrima.
U batch datoteci gdje želite provjeriti promjene, možete koristiti ove kodove s naredbama poput AKO JE RAZINA POGREŠKE ili slične konstrukcije, tako da skripta djeluje na jedan ili drugi način ovisno o tome podudaraju li se datoteke ili ne.
Praktični primjeri korištenja FC-a
Nakon što se teorija shvati, najkorisnije je vidjeti određene naredbe koje možete izvršiti Ovi se primjeri koriste u svakodnevnoj usporedbi datoteka u sustavu Windows. Temelje se izravno na službenoj dokumentaciji i pomoći za Windows.
Usporedite dvije tekstualne datoteke u ASCII načinu rada
Zamislite da imate dva izvješća, mjesečno.rpt y prodaja.rptI želite vidjeti kako se razlikuju, ali bez preopterećenja ekrana linijama. Možete koristiti:
fc /a monthly.rpt sales.rpt
S opcijom /A, FC će prikazivati samo prvi i zadnji redak svakog bloka razlikašto rezultat čini mnogo čitljivijim kada su promjene opsežne.
Usporedite binarne datoteke (npr. batch skripte)
Ako vas zanima provjera promjena na razini bajtova u dvije batch datoteke, recimo profit.bat y zarada.batIdealno bi bilo koristiti binarni način rada:
fc /b profits.bat earnings.bat
Ako postoje razlike, vidjet ćete nešto poput nekoliko redaka s različitim heksadecimalnim adresama i parovima bajtova. S druge strane, ako se dvije datoteke podudaraju 100%, FC će vratiti poruku koja pokazuje da Nisu pronađene razlike tijekom usporedbe.
Usporedite sve .bat datoteke s referentnom datotekom
Ponekad je korisno usporediti nekoliko datoteka odjednom s novom verzijom koja služi kao predložak. Na primjer, ako želite usporediti svaku .bat datoteku u trenutnom direktoriju s novi.batMožete koristiti ovu naredbu:
fc *.bat new.bat
FC će pregledati sve .bat datoteke u trenutnom direktoriju koje odgovaraju uzorku i usporediti ih jednu po jednu s novom .bat datotekom, pokazujući vam razlike između svakog para.
Usporedite datoteke s istim imenom na različitim diskovima
Druga prilično tipična situacija je provjera podudaraju li se datoteke na disku C i disku D, na primjer, kada provjeravate sigurnosnu kopiju. Za usporedbu svih .bat datoteka u korijenskom direktoriju diska C: s njihovim ekvivalentima na disku D:, možete upisati:
fc c:\*.bat d:\*.bat
U ovom slučaju, FC će usporediti svaku batch datoteku u C: korijenu s datotekom koju ima isto ime u korijenu D:Ako želite usporediti samo određenu datoteku, jednostavno biste trebali navesti naziv umjesto zamjenskog znaka *.bat.
Korištenje FC-a u Windows konzoli i PowerShellu
Klasična Windows naredbena konzola, poznata kao CMDNudi idealno okruženje za korištenje FC naredbe, ali možete je koristiti i iz PowerShella uz malu razliku. U CMD-u jednostavno otvorite prozor (na primjer, upisivanjem cmd u izborniku Start) i izvršite naredbe točno onako kako je prikazano u prethodnim primjerima.
U PowerShellu, kao što je već spomenuto, fc je pseudonim cmdleta Format-CustomKako biste izbjegli sukobe i osigurali da koristite klasični Windows alat za usporedbu datoteka, morate upisati fc.exe umjesto jednostavno fcOd tog trenutka nadalje, sintaksa parametra ostaje ista kao u CMD-u.
Mnogi korisnici kombiniraju FC s drugim uobičajenim konzolnim naredbama, kao što su CD (za promjenu mapa), DIR (za popis sadržaja direktorija), STABLO (za pregled stabla podmapa), MOVE o PREIMENOVATI (za premještanje ili preimenovanje datoteka) i uslužne programe kao što su PRONAĐITE za pretraživanje tekstualnih nizova unutar jedne ili više datoteka.
Sasvim je izvedivo integrirati FC u složenije skripte koje izrađuju sigurnosne kopije, sinkroniziraju direktorije ili provjeravaju konfiguracijske datoteke. nisu modificirani u odnosu na izvorni predložak, koristeći prednosti i izlaznih kodova i specifičnih opcija usporedbe.
Pojednostavljene varijante korištenja FC-a i često korištene opcije
U nekim materijalima za obuku ili bilješkama s predavanja uobičajeno je pronaći pojednostavljenu verziju sintakse, koja ističe samo najčešće korištene opcije. Na primjer, vrlo uobičajena kratica je:
fc archivo1 archivo2
U ovom prikazu, /b služi za označavanje binarna usporedbaAko se izostavi, pretpostavlja se da je usporedba tekstualnog tipa (ASCII prema zadanim postavkama ili Unicode ako je naveden /U). Datoteka1 i datoteka2 ostaju nazivi datoteka koje želite usporediti.
Mnogi sažeci također navode sljedeće kao ključne opcije: /b za usporedbu bajt po bajt, /l za usporedbu redak po redak, /c za usporedbu bez razlikovanja velikih i malih slova i /s za usporedbu rekurzivno poddirektorijeTreba pojasniti da opcija /s nije dio službene FC sintakse u sustavu Windows (obično pripada drugim naredbama), ali se ponekad navodi u generičkim shemama usporedbe datoteka ili u bilješkama koje miješaju različite naredbe.
U svakom slučaju, uvijek koristeći ugrađenu pomoć od fc /? a službena dokumentacija će vam osigurati da imate ispravan popis parametara za vašu verziju sustava Windowsbez miješanja opcija iz drugih naredbi s onima iz FC-a.
S obzirom na sve gore navedene informacije, naredba FC otkriva se kao iznenađujuće kompletan alat za svakoga tko treba provjeriti promjene između datoteka u sustavu Windows: omogućuje vam usporedbu u tekstualnom, Unicode ili binarnom načinu rada, podešavanje načina rukovanja razmacima, velikim slovima i tabulatorima, upravljanje datotekama izvan mreže, kontrolu međuspremnika i ponovne sinkronizacije, interpretaciju izlaznih kodova u skriptama i rad s uzorcima i zamjenskim znakovima za cijele serije datoteka, sve bez pribjegavanja vanjskim aplikacijama i korištenja uslužnog programa integriranog u sam operativni sustav.
Strastveni pisac o svijetu bajtova i tehnologije općenito. Volim dijeliti svoje znanje pisanjem, a to je ono što ću učiniti na ovom blogu, pokazati vam sve najzanimljivije stvari o gadgetima, softveru, hardveru, tehnološkim trendovima i još mnogo toga. Moj cilj je pomoći vam da se snađete u digitalnom svijetu na jednostavan i zabavan način.


