Táto príručka vám ukáže, ako používať systém Linux na porovnanie dvoch súborov a výstup ich rozdielu na obrazovku alebo súbor.
Nemusíte inštalovať žiadny špeciálny softvér na porovnanie súborov pomocou systému Linux, ale potrebujete vedieť, ako otvoriť okno terminálu .
Ako ukazuje prepojený sprievodca, existuje mnoho spôsobov, ako otvoriť okno terminálu pomocou systému Linux. Najjednoduchšie je súčasne stlačiť klávesy CTRL, ALT a T.
Vytváranie súborov na porovnanie
Ak chcete sledovať spolu s touto príručkou, vytvorte súbor s názvom "file1" a zadajte nasledujúci text:
10 zelených fliaš stojacich na stene
10 zelených fliaš stojacich na stene
Ak jedna zelená fľaša náhodne spadne
Na stene by stálo 9 zelených fliaš
Súbor môžete vytvoriť podľa týchto pokynov:
- Otvorte súbor zadaním nasledujúceho príkazu: nano file1
- Zadajte text do editora nano
- Stlačením klávesov CTRL a O uložte súbor
- Stlačením CTRL a X ukončíte súbor
Teraz vytvorte ďalší súbor s názvom "file2" a zadajte nasledujúci text:
10 zelených fliaš stojacich na stene
Ak 1 zelená fľaša náhodne spadne
Na stene by stálo 9 zelených fliaš
Súbor môžete vytvoriť podľa týchto pokynov:
- Otvorte súbor zadaním nasledujúceho príkazu: nano file2
- Zadajte text do editora nano
- Stlačením klávesov CTRL a O uložte súbor
- Stlačením CTRL a X ukončíte súbor
Ako porovnávať dva súbory pomocou systému Linux
Príkaz používaný v systéme Linux na zobrazenie rozdielov medzi dvoma súbormi sa nazýva príkaz diff.
Najjednoduchšia forma príkazu diff je nasledujúca:
diff file1 file2
Ak sú súbory rovnaké, nebudú pri použití tohto príkazu žiadny výstup, pretože ak sú rozdiely, uvidíte výstup podobný nasledujúcemu:
2,4c2,3
<10 zelených fliaš stojacich na stene
... > Ak by sa náhodne spadla jedna zelená fľaša > Na stene by stálo 9 zelených fliaš Spočiatku sa výstup môže zdať mätúce, ale akonáhle rozumiete terminológii, je to pomerne logické. Pomocou vlastných očí môžete vidieť, že rozdiely medzi dvoma súbormi sú nasledovné: Výstup z príkazu diff ukazuje, že medzi riadkami 2 a 4 prvého súboru a riadkami 2 a 3 druhého súboru sú rozdiely. V tomto zozname sú uvedené riadky 2 až 4 z prvého súboru, za ktorými nasledujú dva rôzne riadky v druhom súbore. Ak chcete len vedieť, či sú súbory odlišné a nemáte záujem, ktoré riadky sú iné, môžete spustiť nasledujúci príkaz: diff -q file1 file2 Ak sú súbory odlišné, zobrazí sa nasledovné: Súbory file1 a file2 sa líšia Ak sú súbory rovnaké, nič sa nezobrazí. Keď spustíte príkaz, ktorý chcete vedieť, že funguje správne, chcete, aby sa správa zobrazovala pri spustení príkazu diff bez ohľadu na to, či sú súbory rovnaké alebo odlišné Aby ste dosiahli túto požiadavku pomocou príkazu diff, môžete použiť nasledujúci príkaz :. diff -s file1 file2 Teraz, ak sú súbory rovnaké, dostanete nasledujúcu správu: Súbory file1 a file2 sú identické Ak existuje veľa rozdielov, potom sa môže veľmi rýchlo stať mätúcou, pokiaľ ide o skutočné rozdiely medzi týmito dvoma súbormi. Výstup príkazu diff môžete zmeniť tak, aby sa výsledky zobrazovali vedľa seba. Za týmto účelom spustite nasledujúci príkaz: diff -y súbor1 súbor2 Výstup pre súbor používa | symbol na zobrazenie rozdielu medzi dvoma riadkami, a Je zaujímavé, že ak spustíte príkaz pomocou našich demonštračných súborov, všetky riadky sa budú zobrazovať ako iné, s výnimkou posledného riadku súboru 2, ktorý sa zobrazí ako odstránený. Pri porovnávaní dvoch súborov vedľa seba môže byť ťažké čítať, či majú súbory veľa stĺpcov textu. Ak chcete obmedziť počet stĺpcov, použite nasledujúci príkaz: diff - width = 5 súbor file2 Ak chcete porovnať dva súbory, ale nestaráte sa, či je prípad písmen rovnaký medzi týmito dvoma súbormi, môžete použiť nasledujúci príkaz: diff -i file1 file2 Ak pri porovnávaní súborov spozorujete veľa rozdielov a rozdiely sú spôsobené prázdnym priestorom na konci riadkov, môžete ich vynechať ako zobrazené ako zmeny spustením nasledujúceho príkazu: diff -Z súbor1 súbor2 Ak máte záujem len o text v súbore a je vám jedno, či v sebe existuje viac medzery ako jeden, môžete použiť nasledujúci príkaz: diff -w súbor1 súbor2 Ak je vám jedno, že jeden súbor môže mať navyše prázdne riadky, potom môžete porovnať súbory pomocou nasledujúceho príkazu: diff -B súbor1 súbor2 Viac informácií nájdete v príručke príkazu diff. man diff Príkaz diff môže byť použitý v najjednoduchšej forme, aby vám ukázal rozdiely medzi dvomi súbormi, ale môžete ho tiež použiť na vytvorenie diff súboru ako súčasti stratégie patchingu, ako je uvedené v tejto príručke príkazu patch Linux . Ďalší príkaz, ktorý môžete použiť na porovnanie súborov, je príkaz cmp, ako je uvedené v tejto príručke . To porovnáva súbory bajtov byte. Ako jednoducho zobraziť, ak sú súbory odlišné
Ako zobraziť správu Ak sú súbory rovnaké
Ako vytvoriť rozdiely vedľa seba
Obmedzenie šírky stĺpcov
Ako ignorovať rozdiely v prípadoch pri porovnávaní súborov
Ako ignorovať koncový biely priestor na konci čiary
Ako ignorovať všetky biele rozdiely medzi dvomi súbormi
Ako ignorovať prázdne riadky pri porovnávaní dvoch súborov
zhrnutie