Kuidas võrrelda kahte tekstifaili Linuxiga

See juhend näitab teile, kuidas Linuxi kahe faili võrdlemiseks kasutada, ja väljundi erinevust ekraanile või failile.

Linuxi failide võrdlemiseks ei pea te installima ühtegi spetsiaalset tarkvara, kuid te peate teadma, kuidas terminali akent avada .

Lingitud juhend näitab, et Linuxi abil saab terminali akent avada palju võimalusi. Lihtsaim on vajutada samal ajal CTRL, ALT ja T-klahve.

Võrrelda failide loomine

Selle juhendi järgimiseks looge fail nimega "file1" ja sisestage järgmine tekst:

10 rohelist pudelit seina peal

10 rohelist pudelit seina peal

Kui üks roheline pudel peaks kogemata langema

Seal seisaks 9 rohelist pudelit

Faili saate luua järgmiste juhiste järgi:

  1. Avage fail, sisestage järgmine käsk: nano file1
  2. Sisestage tekst nano-redaktorisse
  3. Vajuta faili salvestamiseks CTRL ja O
  4. Failist väljumiseks vajutage klahvikombinatsiooni CTRL ja X

Nüüd saate luua teise faili nimega "file2" ja sisestage järgmine tekst:

10 rohelist pudelit seina peal

Kui 1 roheline pudel peaks kogemata langema

Seal seisaks 9 rohelist pudelit

Faili saate luua järgmiste juhiste järgi:

  1. Avage fail, sisestage järgmine käsk: nano file2
  2. Sisestage tekst nano-redaktorisse
  3. Vajuta faili salvestamiseks CTRL ja O
  4. Failist väljumiseks vajutage klahvikombinatsiooni CTRL ja X

Kuidas võrrelda kahte faili Linuxiga

Linuxis kasutatav käsk, mis näitab erinevusi kahe faili vahel, nimetatakse diff-käsuks.

Dif skänneri lihtsaim vorm on järgmine:

diff file1 file2

Kui failid on ühesugused, siis selle käsu kasutamisel ei tule väljundit, aga kuna erinevused näitavad, on väljund sarnane:

2,4c2,3

<10 rohelist pudelit, mis seisavad seinal

...

> Kui 1 roheline pudel peaks kogemata langema

> Seinale on seatud 9 rohelist pudelit

Esialgu võib väljund tunduda segane, kuid kui sa mõistad terminoloogiat, on see üsna loogiline.

Oma silmade abil näete, et kahe faili erinevused on järgmised:

Diferentseerimise käsu väljund näitab, et esimese faili read 2 ja 4 ning teise faili read 2 ja 3 on erinevused.

Seejärel loetletakse esimesest failist jooned 2 kuni 4, teises failis 2 erinevat joont.

Kuidas lihtsalt näidata, kas failid on erinevad

Kui soovite lihtsalt teada, kas failid on erinevad ja te ei huvita, millised read on erinevad, võite käivitada järgmise käsu:

diff -q file1 file2

Kui failid on erinevad, kuvatakse järgmine:

Failid file1 ja file2 erinevad

Kui failid on samad, siis midagi ei kuvata.

Kuidas kuvada sõnum, kui failid on samad

Kui käivitate käsu, mida soovite teada, et see on korralikult töötatud, siis soovite, et käsku diff käsk kuvataks, sõltumata sellest, kas failid on samad või erinevad

Selle nõude saavutamiseks, kasutades diff-käsku, saate kasutada järgmist käsku :.

diff -s file1 file2

Nüüd, kui failid on samad, saadetakse järgmine teade:

Failid file1 ja file2 on identsed

Kuidas tekitada erinevusi üksteise kõrval

Kui on palju erinevusi, võib see väga kiiresti segi ajada, millised erinevused tegelikult kahe faili vahel on.

Võite muuta diff-käsu väljundit, nii et tulemusi näidatakse kõrvuti. Selleks käivitage järgmine käsk:

diff -y file1 file2

Faili väljund kasutab | sümbol, mis näitab kahe joone vahelist erinevust, a <, et näha joont, mis on eemaldatud, ja>, et näidata lisatud rida.

Huvitav, kui käivitate käsu meie näidisfailide abil, siis kuvatakse kõik ridad erinevaks, välja arvatud viimane fail rida 2, mis näitab olevat kustutatud.

Veeru laiuste piiramine

Kui võrrelda kahte faili kõrvuti, võib seda raske lugeda, kui failidel on palju teksti veerge.

Paljude veergude piiramiseks kasutage järgmist käsku:

diff --width = 5 failifail2

Kuidas ignoreerida kohtuasjade erinevusi failide võrdlemisel

Kui soovite võrrelda kahte faili, kuid te ei hooli sellest, kas tähed on kahe faili vahel ühesugused, võite kasutada järgmist käsku:

diff-i fail1 fail2

Kuidas ignoreerida trailist valget ruumi rea lõpus

Kui failide võrdlemisel ilmnevad erinevad erinevused ning erinevused on tingitud tühikute ruumist ridade lõpus, võite need muutuste ilmnemisel jätta vahele, käivitades järgmise käsu:

diff -Z fail1 fail2

Kuidas ignoreerida kõiki valge ruumi erinevusi kahe faili vahel

Kui olete huvitatud ainult faili tekstist ja te ei hooli sellest, kas seal on rohkem tühikuid, võite kasutada järgmist käsku:

diff -w file1 file2

Kuidas tühjenemisjoont ignoreerida, kui võrrelda kahte faili

Kui sulle ei meeldi, et ühes failis võib olla tühi rida, saate neid faile võrrelda järgmise käsuga:

diff -B fail1 fail2

Kokkuvõte

Lisateavet saate lugeda diff käsku käsiraamatust.

mees dif

Dif suuna saab kasutada kõige lihtsamal kujul, et lihtsalt näidata teile erinevusi kahe faili vahel, kuid võite seda ka diferentsifaili loomiseks osana patchstrateegiast, nagu on käesolevas juhendis näidatud Linuxi patch käsule .

Teine käsk, mida saate failide võrdlemiseks kasutada, on käsk cmp, nagu see juhend näitab . See võrdleb failide baiti baidiga.