- FC komanda ļauj salīdzināt vienu vai vairākus failus sistēmā Windows teksta, unikoda vai binārā režīmā, precīzi norādot to atšķirības.
- Jūsu opcijas (/A, /B, /C, /L, /U, /W, /LBn, /nnnn, /N, /OFFLINE, /T) pielāgo neatbilstību interpretāciju un attēlošanu.
- FC atgriež izejas kodus (0, 1 vai 2), kas atvieglo tā integrāciju skriptos un automatizācijās, lai pārbaudītu izmaiņas.
- Tas atbalsta ceļus, diskus un aizstājējzīmes failu partiju salīdzināšanai un to var izmantot gan CMD, gan PowerShell, izsaucot fc.exe.
Ja strādājat ar skriptiem, atskaitēm, kodu vai vienkārši vēlaties pārbaudīt, vai fails ir modificēts, komanda Windows konsoles fc Tas ir viens no tiem diskrētajiem, bet neticami noderīgajiem resursiem, par kuriem gandrīz neviens daudz nezina. Jums nekas nav jāinstalē vai jāizmanto ārējas programmas: tas ir iekļauts pašā operētājsistēmā un ir gatavs lietošanai no komandrindas vai PowerShell — jūs varat redzēt, kā Salīdziniet tekstus un failus programmā PowerShell vai CMD.
Turpmākajās rindās mēs redzēsim Kā salīdzināt failus, izmantojot FC komandu sistēmā WindowsTajā ir aplūkoti piedāvātie salīdzināšanas režīmi (ASCII, Unicode un binārais), katra parametra nozīme oficiālajā Microsoft sintaksē, izvades kodu interpretācija un vairāki praktiski piemēri ikdienas lietošanai. Viss ir izskaidrots soli pa solim skaidrā valodā, neizlaižot nekādas svarīgas tehniskas detaļas.
Kas ir FC komanda un kam tā tiek izmantota?
Komanda FC (failu salīdzināšana) Tas ir Windows komandrindas rīks, ko izmanto, lai salīdzinātu divu failu vai divu failu kopu saturu un parādītu atšķirības starp tiem. Tas ir saderīgs ar Windows 10, Windows 11, vecākām versijām un servera izdevumiem. Windows Server 2019, 2022 un jaunākas versijas.
Palaižot FC, sistēma analizē abus failus un paziņo jums Vai tie ir identiski, vai tie atšķiras un kādos veidos tie atšķiras?Atkarībā no izvēlētās opcijas tas var darboties teksta līmenī (pa rindiņai), Unicode tekstā vai binārā līmenī (pa baitiem), tāpēc tas pielāgojas gan vienkāršiem teksta failiem (Salīdziniet failus programmā Notepad) piemēram, izpildāmie faili, attēli vai citi binārie formāti.
Turklāt FC ļauj precizēt salīdzināšanas veidu, pateicoties vairākām iespējām: jūs varat Ignorēt lielos un mazos burtus, ignorēt atstarpes, rādīt rindu numurusTas ļauj ierobežot secīgu atšķirību skaitu, ko var apstrādāt iekšējā bufera atmiņa, salīdzināt failus, kas atzīmēti kā bezsaistē pieejami, un veikt citas darbības. Tas ir daudz elastīgāks, nekā sākumā šķiet.
Ir svarīgi atzīmēt, ka, lai gan to var izsaukt no PowerShell, šajā vidē fc ir cmdlet Format-Custom aizstājvārds.Tāpēc, ja vēlaties izmantot klasisko failu salīdzināšanas rīku, jums ir skaidri jāievada fc.exe nevis tikai fc, lai nodrošinātu pareizo bināro failu, kas atrodas C:\WINDOWS\fc.exe.
Pilnīga FC komandas sintakse
Saskaņā ar Microsoft Windows palīdzību komandas oficiālā sintakse ietver divus galvenos lietošanas režīmus: teksta salīdzināšana (ASCII vai Unicode) y binārā salīdzināšanaVispārīgā forma ir šāda:
fc /a ] <archivo1> <archivo2>
fc /b <archivo1> <archivo2>
Praksē tas nozīmē, ka jūs varat pievienot vienu vai vairākus modifikatorus pirms failu nosaukumiem, lai pielāgotu FC darbību. Ceļa un diska parametri ir neobligāti, tāpēc vienkārši norādiet faila nosaukumu, ja tas atrodas pašreizējā direktorijā; pretējā gadījumā būs jānorāda arī ceļš vai disks.
Klasiskā palīdzība, kas parādās skrienot fc /? Spāņu komandrindas sintakse ir apkopota šādi (formatēta labākai izpratnei):
FC ]
archivo1 archivo2
FC /B archivo1 archivo2
Visās šajās variācijās, fails1 y fails2 Tie apzīmē pirmo un otro salīdzināmo failu (vai failu modeļus). Tiek atbalstītas arī aizstājējzīmes, kas ļauj salīdzināt veselas failu grupas ar vienu komandu.
Katra FC komandas parametra nozīme
Komandas patiesais potenciāls kļūst skaidrs, redzot, ko dara katra opcija. Tās ir detalizēti aprakstītas tālāk. visus fc.exe atpazītos parametrus kā tie parādās Microsoft dokumentācijā un iebūvētajā palīdzībā.
Salīdzināšanas režīmi
/A – Iespējo vienkāršotu izvades režīmu ASCII teksta salīdzinājumiem. Tā vietā, lai uzskaitītu visas rindas, kas atšķiras starp abiem failiem, FC rāda tikai katras atšķirību grupas pirmā un pēdējā rindaTas ir ļoti noderīgi, ja ir lieli izmaiņu bloki un nevēlaties, lai konsole piepildītos ar nebeidzamu tekstu.
/B – Piespiest vienu baitu pa baitiem binārā salīdzināšanaŠajā režīmā netiek mēģināts atkārtoti sinhronizēt datu plūsmu pēc neatbilstības atrašanas; tas vienkārši turpina darbību un parāda katru atrasto atšķirību. Šis ir noklusējuma režīms failiem ar parasti bināriem paplašinājumiem, piemēram, .exe, .com, .sys, .obj, .lib vai .bin, pat ja nav skaidri norādīts slēdzis /B.
/L – Norādīt FC veikt ASCII rindiņu salīdzinājumsvienmēr mēģina atkārtoti sinhronizēt failus pēc atšķirības noteikšanas. Šis ir noklusējuma režīms visiem failiem, kas netiek uzskatīti par bināriem (t. i., tiem, kuriem nav iepriekš minēto izpildāmo un līdzīgu paplašinājumu).
/U – Mainiet fc darbību, lai apstrādātu failus kā Unikoda teksta failiŠī opcija nodrošina, ka tiek ievērots konkrētais kodējums (piemēram, UTF-16) un ka rakstzīmes, kas pārsniedz pamata ASCII, tiek pareizi interpretētas.
Lielo burtu, atstarpju un tabulēšanas rakstzīmju kontrole
/C – Tas liek komandai ignorēt atšķirības starp lielie un mazie burtiJa mainās tikai lielo un mazo burtu lietojums (piemēram, "Hola" pret "HOLA"), rindas tiks uzskatītas par līdzvērtīgām un netiks atzīmētas kā atšķirīgas. Ņemiet vērā, ka tas attiecas uz burtiem, bet ne uz citām rakstzīmēm.
/W – Saspiest un samazināt nozīmi tukša vietaTas ir, tabulēšanas rakstzīmes un atstarpes. Ja rindā ir gara secīgu atstarpju vai tabulēšanas rakstzīmju virkne, FC tās apstrādās kā vienu atstarpi. Turklāt, ja izmantojat /W, komanda ignorē sākotnējās un pēdējās atstarpes katras rindas salīdzināšanas laikā, kas ir lieliski piemērots skriptiem vai tekstiem, kuros atkāpe nav būtiska.
/T – Atspējo tabulēšanas automātisko konvertēšanu uz atstarpēm. Pēc noklusējuma FC parasti apstrādā tabulēšanas rakstzīmes kā atstarpes ar pārtraukumiem ik pēc astoņām rakstzīmēm, bet ar /T Tabulas tiek ievērotas tādas, kādas tās ir.Tas ir noderīgi, ja precīza izlīdzināšana ir daļa no jēgpilna satura.
Iekšējā bufera pārvaldība un sinhronizācija
/LB – Pielāgojiet izmēru iekšējā līnijas bufera ko FC izmanto, salīdzinot teksta failus. Pēc noklusējuma šis buferis ļauj apstrādāt līdz pat 100 dažādām secīgām rindām. Ja diviem salīdzināmajiem failiem ir vairāk nekā 100 secīgas rindas bez atbilstībām, programma uzskata, ka faili ir pārvietoti pārāk tālu viens no otra, un pārtrauc salīdzināšanuAr šo parametru var palielināt vai samazināt šo ierobežojumu, norādot konkrētu rindu skaitu 100 vietā.
/ – Norādiet, cik daudz secīgām rindām ir jāsakrīt Pēc neatbilstības FC uzskata, ka abi faili ir veiksmīgi atkārtoti sinhronizēti. Noklusējuma vērtība ir 2. Ja pēc atšķirību bloka tas atrod mazāk nekā nnnn secīgas identiskas rindas, šīs rindas joprojām tiks parādītas kā atšķirību daļa, jo programma pieņem, ka faili joprojām nav izlīdzināti.
Bezsaistes apskates un arhivēšanas iespējas
/N – Tas izraisa līniju numuri Veicot ASCII salīdzināšanu, līdzās saturam redzēsiet katra faila faktisko rindas atsauci, kas ir svarīgi, ja vēlāk būs nepieciešams manuāli rediģēt attiecīgo failu.
/IZSLĒGTS – Pēc noklusējuma FC izlaiž failus, kuriem ir iestatīts atribūts “bezsaistē”. Šī opcija norāda programmai, ka Salīdzināt arī failus, kas atzīmēti kā bezsaistes failikas var būt noderīgi vidēs, kur dati tiek glabāti attālās vietās vai īpašās failu sistēmās.
Faila specifikācija un ātrā palīdzība
Papildus iepriekš minētajām opcijām ir svarīgi saprast, kā komandrindā norādīt failus. Sintakses daļa, kas sastāv no fails1 y fails2 definē pirmais un otrais fails kuru FC salīdzinās. Varat izmantot pilnus ceļus, relatīvos ceļus un, ja nepieciešams, dažādus disku burtus.
Komanda atbalsta arī aizstājējzīmes: * y ?Ja failā 1 iekļaujat zvaigznīti vai jautājuma zīmi, FC ņems visus failus, kas atbilst šim šablonam, un salīdzinās tos ar failu vai šablonu, kas norādīts kā fails 2. Un, ja failā 2 izmantojat aizstājējzīmi, rīks lietos aizstājējzīmi. ekvivalents faila nosaukums1 lai pabeigtu atlikušo modeli un izveidotu pārus, kas jāsalīdzina.
Visbeidzot, modifikators /? Tā nav daļa no salīdzinājumiem kā tādiem, bet gan kalpo parādīt komandas iebūvēto palīdzību komandu uzvednē. Palaist fc /? Tas ir ātrākais veids, kā pārskatīt sintaksi savā datorā, vienmēr jūsu Windows instalācijas valodā.
Kā FC parāda atšķirības starp failiem
FC piedāvātais izvades formāts nedaudz atšķiras atkarībā no tā, ko mēs darām. ASCII/Unicode teksta salīdzinājums vai binārā salīdzināšanaŠī formāta izpratne palīdzēs jums ātrāk izlasīt rezultātus un atrast nepieciešamo informāciju.
Standarta ASCII salīdzinājumā pēc komandas izpildes FC parasti parāda pirmo pirmā faila nosaukums, kam seko šī faila rindas, kas atšķiras no otrā faila rindām. Pēc tam parādās pirmā rinda, kas atkal sakrīt abos failos, kas darbojas kā atkārtotas sinhronizācijas punkts. Pēc tam struktūra tiek atkārtota ar otro failu: tā nosaukums, atšķirīgās rindas un pirmā nākamā atbilstošā rinda.
Kad aktivizējat bināro režīmu ar /BTomēr lietas mainās: katra neatbilstība tiek attēlota ar šāda veida sintaksi: \<XXXXXXXX: YY ZZ>. Vērtība XXXXXXXX Tā ir relatīva heksadecimāla adrese (sākot ar 00000000), kas norāda pozīciju, kur tika atrasts atšķirīgais baitu pāris. Blakus tai ir parādīti YY y ZZ, kas ir attiecīgi failam 1 un failam 2 piederošo neatbilstošo baitu heksadecimālās vērtības.
Ja binārā salīdzināšana sasniedz viena faila beigas, bet otrā joprojām ir dati, FC to norādīs. viens no failiem ir garāks par otruTomēr, ja pēc visa satura analīzes netiek konstatētas nekādas atšķirības, ekrānā parādīsies šāds ziņojums. FC: no differences encounteredvai tā lokalizēto ekvivalentu, skaidri norādot, ka abi faili ir identiski.
ASCII režīmā FC paļaujas uz savu iekšējais buferis 100 rindu (ja vien neesat to modificējis ar /LBn), lai lasītu un saskaņotu pa blokiem. Ja faili ir tik atšķirīgi, ka nevar atrast atbilstību šajā blokā, tiks parādīts ziņojums "Atkārtota sinhronizācija neizdevās. Faili ir pārāk atšķirīgi.", norādot, ka nav izdevies saprātīgā veidā atkārtoti izlīdzināt abas teksta secības.
FC komandas izejas kodi
Papildus tekstam, ko redzat ekrānā, izpildāmais fails fc.exe atgriež izejas kodu operētājsistēmai, kad tā ir pabeigta. Šis kods ir ārkārtīgi svarīgs, izmantojot FC pakešapstrādes skriptos vai automatizācijās, jo tas ļauj pieņemt lēmumus, pamatojoties uz salīdzināšanas rezultātu, manuāli neanalizējot atgriezto tekstu.
Izejas kodu tabula ir ļoti vienkārša un paliek nemainīga:
- 0 – Salīdzināmie faili ir identiskiSaturā atšķirības netika konstatētas.
- 1 – Faili ir atšķirasStarp failu1 un failu2 ir vismaz viena neatbilstība.
- 2 – A kļūda salīdzināšanas laikāTas var būt saistīts ar atļaujām, nepieejamiem failiem, lasīšanas problēmām vai nederīgiem parametriem.
Sērijveida failā, kurā vēlaties pārbaudīt izmaiņas, varat izmantot šos kodus ar tādām komandām kā JA KĻŪDAS LĪMENIS vai līdzīgas konstrukcijas, lai skripts darbotos vienā vai otrā veidā atkarībā no tā, vai faili sakrīt vai nē.
FC lietošanas praktiski piemēri
Kad teorija ir saprasta, visnoderīgākais ir redzēt konkrētas komandas, kuras varat izpildīt Šie piemēri tiek izmantoti ikdienas failu salīdzinājumā operētājsistēmā Windows. Tie ir tieši balstīti uz oficiālo dokumentāciju un Windows palīdzību.
Salīdziniet divus teksta failus ASCII režīmā
Iedomājieties, ka jums ir divi ziņojumi, mēneša.rpt y pārdošanas.rptUn jūs vēlaties redzēt, kā tie atšķiras, bet nepārslogojot ekrānu ar līnijām. Jūs varētu izmantot:
fc /a monthly.rpt sales.rpt
Ar opciju /A FC rādīs tikai katra atšķirību bloka pirmā un pēdējā rindakas padara rezultātu daudz lasāmāku, ja izmaiņas ir plašas.
Salīdzināt bināros failus (piemēram, partijas skriptus)
Ja jūs interesē pārbaudīt baitu līmeņa izmaiņas divos pakešfailos, teiksim, ka peļņa.bat y peļņa.batIdeālā gadījumā izmantojiet bināro režīmu:
fc /b profits.bat earnings.bat
Ja pastāv atšķirības, redzēsiet kaut ko līdzīgu vairākām rindām ar atšķirīgām heksadecimālajām adresēm un baitu pāriem. Savukārt, ja abi faili sakrīt 100%, FC atgriezīs ziņojumu, kas norāda, ka Netika atrastas atšķirības salīdzināšanas laikā.
Salīdziniet visus .bat failus ar atsauces failu
Dažreiz ir noderīgi salīdzināt vairākus failus vienlaikus ar jaunu versiju, kas kalpo kā veidne. Piemēram, ja vēlaties salīdzināt katru .bat failu pašreizējā direktorijā ar new.batVarat izmantot šo komandu:
fc *.bat new.bat
FC pārskatīs visus .bat failus pašreizējā direktorijā, kas atbilst paraugam, un salīdzinās tos pa vienam ar new.bat failu, parādot atšķirības starp katru pāri.
Salīdziniet failus ar vienādu nosaukumu dažādos diskos
Vēl viena diezgan tipiska situācija ir pārbaudīt, vai C un D disku faili sakrīt, piemēram, validējot dublējumu. Lai salīdzinātu visus .bat failus C: saknes direktorijā ar to ekvivalentiem D: diskā, varat ierakstīt:
fc c:\*.bat d:\*.bat
Šajā gadījumā FC salīdzinās katru pakešfailu C: saknē ar failu, kurā tas atrodas tāds pats nosaukums D saknē:Ja vēlaties salīdzināt tikai konkrētu failu, jums vienkārši jānorāda nosaukums, nevis aizstājējzīme *.bat.
FC izmantošana Windows konsolē un PowerShell
Klasiskā Windows komandu konsole, kas pazīstama kā CMDTā piedāvā ideālu vidi FC komandas izmantošanai, taču to var izmantot arī no PowerShell ar nelielu atšķirību. CMD vienkārši atveriet logu (piemēram, ierakstot cmd izvēlnē Sākt) un izpildiet komandas tieši tā, kā parādīts iepriekšējos piemēros.
Kā jau minēts, programmā PowerShell fc ir cmdlet Format-Custom aizstājvārds.Lai izvairītos no konfliktiem un nodrošinātu, ka izmantojat klasisko Windows failu salīdzinātāju, jums jāievada fc.exe tā vietā, lai vienkārši fcKopš tā brīža parametra sintakse paliek tāda pati kā CMD.
Daudzi lietotāji kombinē FC ar citām izplatītām konsoles komandām, piemēram, CD (lai mainītu mapes), DIR (lai uzskaitītu direktorija saturu), KOKU (lai skatītu apakšmapju koku), MOVE o RENAME (failu pārvietošanai vai pārdēvēšanai) un tādas utilītas kā ATRAST lai meklētu teksta virknes vienā vai vairākos failos.
Ir pilnīgi iespējams integrēt FC sarežģītākos skriptos, kas veic dublēšanu, sinhronizē direktorijus vai pārbauda konfigurācijas failus. nav modificēti attiecībā pret oriģinālo veidni, izmantojot gan izejas kodus, gan īpašās salīdzināšanas iespējas.
Vienkāršoti FC lietošanas varianti un bieži izmantotās opcijas
Dažos mācību materiālos vai nodarbību piezīmēs bieži ir atrodama vienkāršota sintakses versija, kurā izceltas tikai visbiežāk izmantotās opcijas. Piemēram, ļoti izplatīts saīsinājums ir:
fc archivo1 archivo2
Šajā attēlojumā /b kalpo, lai norādītu uz binārā salīdzināšanaJa netiek norādīts, tiek pieņemts, ka salīdzinājums ir teksta tipā (pēc noklusējuma ASCII vai Unicode, ja norādīts /U). File1 un file2 paliek to failu nosaukumi, kurus vēlaties salīdzināt.
Daudzos kopsavilkumos kā galvenās opcijas ir norādītas arī šādas: /b salīdzināšanai pa baitiem, /l salīdzināšanai pa rindiņām, /c salīdzināšanai bez reģistrjutīguma un /s salīdzināšanai. rekursīvi apakšdirektorijiJāprecizē, ka /s opcija nav daļa no oficiālās FC sintakses operētājsistēmā Windows (tā parasti pieder pie citām komandām), taču tā dažreiz tiek minēta vispārīgās failu salīdzināšanas shēmās vai piezīmēs, kurās tiek jauktas dažādas komandas.
Jebkurā gadījumā vienmēr izmantojiet iebūvēto palīdzību fc /? un oficiālā dokumentācija nodrošinās, ka jums ir pareizais parametru saraksts jūsu Windows versijainejaucot citu komandu opcijas ar FC komandām.
Ņemot vērā visu iepriekš minēto informāciju, FC komanda atklājas kā pārsteidzoši pilnīgs rīks ikvienam, kam jāpārbauda izmaiņas starp failiem sistēmā Windows: tā ļauj salīdzināt teksta, unikoda vai binārā režīmā, pielāgot atstarpju, lielo burtu un tabulīšu apstrādi, pārvaldīt failus bezsaistē, kontrolēt buferi un atkārtotu sinhronizāciju, interpretēt izejas kodus skriptos un strādāt ar modeļiem un aizstājējzīmēm veselām failu partijām, neizmantojot ārējās lietojumprogrammas un pašā operētājsistēmā integrētu utilītu.
Kaislīgs rakstnieks par baitu pasauli un tehnoloģiju kopumā. Man patīk dalīties savās zināšanās rakstot, un tieši to es darīšu šajā emuārā, parādot visu interesantāko informāciju par sīkrīkiem, programmatūru, aparatūru, tehnoloģiju tendencēm un daudz ko citu. Mans mērķis ir palīdzēt jums vienkāršā un izklaidējošā veidā orientēties digitālajā pasaulē.


