Si të krahasoni dy skedarë teksti duke përdorur Linux

Ky udhëzues do t'ju tregojë se si të përdorni Linux për të krahasuar dy skedarë dhe për të nxjerrë ndryshimet e tyre në ekran ose në një skedar.

Ju nuk keni nevojë të instaloni ndonjë softuer të veçantë për të krahasuar skedarët duke përdorur Linux por ju duhet të dini se si të hapni një dritare terminali .

Si udhëzuesi i lidhur tregon se ka shumë mënyra për të hapur dritaren e terminalit duke përdorur Linux. Më e thjeshtë është që të shtypni çelësat CTRL, ALT dhe T në të njëjtën kohë.

Krijimi i skedarëve për t'u krahasuar

Për të ndjekur së bashku me këtë udhëzues krijoni një skedar të quajtur "file1" dhe futni tekstin në vijim:

10 shishe jeshile që qëndrojnë në mur

10 shishe jeshile që qëndrojnë në mur

Nëse një shishe jeshile duhet të bjerë aksidentalisht

Kishte 9 shishe jeshile që qëndronin në mur

Mund të krijoni një skedar duke ndjekur këto udhëzime:

  1. Hapni skedarin duke shtypur komandën e mëposhtme: nano file1
  2. Shkruani tekstin në redaktorin nano
  3. Shtypni CTRL dhe O për të ruajtur skedarin
  4. Shtypni CTRL dhe X për të dalë nga skedari

Tani krijoni një skedar tjetër të quajtur "file2" dhe shkruani tekstin e mëposhtëm:

10 shishe jeshile që qëndrojnë në mur

Nëse 1 shishe jeshile duhet të bjerë aksidentalisht

Kishte 9 shishe jeshile që qëndronin në mur

Mund të krijoni një skedar duke ndjekur këto udhëzime:

  1. Hapni skedarin duke shtypur komandën e mëposhtme: nano file2
  2. Shkruani tekstin në redaktorin nano
  3. Shtypni CTRL dhe O për të ruajtur skedarin
  4. Shtypni CTRL dhe X për të dalë nga skedari

Si të krahasoni dy skedarë duke përdorur Linux

Komanda e përdorur brenda Linux për të treguar ndryshimet midis dy skedarëve quhet komanda e ndryshit.

Forma më e thjeshtë e komandës së ndryshit është si më poshtë:

ndrysh file1 file2

Nëse skedarët janë të njëjtë atëherë nuk do të ketë prodhim kur përdorni këtë komandë, megjithatë, meqë ka dallime, do të shihni dalje të ngjashme me sa vijon:

2,4c2,3

<10 shishe jeshile që qëndrojnë në mur

...

> Nëse 1 shishe jeshile duhet të bjerë aksidentalisht

> Kishte 9 shishe jeshile që qëndronin në mur

Fillimisht, prodhimi mund të duket konfuze, por sapo të kuptoni terminologjinë, është mjaft logjike.

Duke përdorur sytë tuaj ju mund të shihni se dallimet në mes të dy dosjeve janë si më poshtë:

Prodhimi nga komanda diff tregon se midis linjave 2 dhe 4 të skedarit të parë dhe linjave 2 dhe 3 të skedarit të dytë ka dallime.

Pastaj liston linjat prej 2 deri 4 nga dosja e parë e ndjekur nga 2 linja të ndryshme në skedarin e dytë.

Si të tregoni vetëm nëse skedarët janë të ndryshëm

Nëse dëshironi të dini nëse dosjet janë të ndryshme dhe nuk jeni të interesuar në cilat linja janë të ndryshme, ju mund të përdorni komandën e mëposhtme:

ndrysh -q file1 file2

Nëse skedarët janë të ndryshëm, do të shfaqet në vijim:

Files file1 dhe file2 ndryshojnë

Nëse skedarët janë të njëjtë atëherë asgjë nuk shfaqet.

Si të tregoni një mesazh nëse skedarët janë të njëjtë

Kur të ekzekutosh një komandë që dëshironi të dini se ka funksionuar si duhet, kështu që dëshironi të shfaqni një mesazh kur të ekzekutoni komandën e ndryshit, pavarësisht nëse skedarët janë të njëjtë ose të ndryshëm

Për të arritur këtë kërkesë duke përdorur komandën diff, ju mund të përdorni komandën e mëposhtme :.

diff -s file1 file2

Tani nëse dosjet janë të njëjta ju do të merrni mesazhin e mëposhtëm:

Skedarët file1 dhe file2 janë identike

Si të Prodhojmë Dallimet Side By Side

Nëse ka shumë dallime, atëherë shumë shpejt mund të bëhet konfuze për atë që ndryshimet janë në të vërtetë midis dy dosjeve.

Ju mund të ndryshoni prodhimin e komandës diff në mënyrë që rezultatet të shfaqen krah për krah. Në mënyrë që të bëni këtë të drejtuar komandën e mëposhtme:

diff -y file1 file2

Produkti për skedarin përdorë. | simbol për të treguar një dallim në mes të dy rreshtave, një për të treguar një vijë që është bashkangjitur.

Interesante nëse e drejtoni komandën duke përdorur skedarët tanë të demonstratës, atëherë të gjitha linjat do të shfaqen si të ndryshme përveç vijës së fundit të skedarit 2 që do të shfaqet si i fshirë.

Kufizimi i Gjerësive të Shtyllës

Kur krahasojmë dy skeda krah për krah, mund të jetë e vështirë të lexosh nëse skedarët kanë shumë kolona të tekstit.

Për të kufizuar një numër të kolonave përdorni komandën e mëposhtme:

ndrysh - width = 5 file file2

Si të injoroni dallimet e rasteve kur krahasoni skedarët

Nëse doni të krahasoni dy skedarë, por nuk ju intereson nëse rasti i shkronjave është i njëjtë midis dy skedarëve, atëherë mund të përdorni komandën e mëposhtme:

ndrysh -i file1 file2

Si të injoroni hapësirën e bardhë që mbaron në fund të një linje

Nëse, kur krahasojmë skedarët, vërehen shumë dallime dhe dallimet janë shkaktuar nga hapësira e bardhë në fund të rreshtave, mund t'i heqësh ato si të shfaqen si ndryshime duke kryer komandën e mëposhtme:

ndryshim -Z file1 file2

Si të injoroni të gjitha ndryshimet e hapësirës së bardhë mes dy dosjeve

Nëse jeni të interesuar vetëm për tekstin në një skedar dhe nuk keni kujdes nëse ka më shumë hapësira në njëri tjetrin, mund të përdorni komandën e mëposhtme:

diff -w file1 file2

Si të injoroni linjat e zbrazëta kur krahasoni dy skedarë

Nëse nuk keni kujdes që një skedar mund të ketë linja shtesë bosh në atë atëherë mund të krahasoni skedarët duke përdorur komandën e mëposhtme:

ndryshim -B file1 file2

përmbledhje

Ju mund të gjeni më shumë informacion duke lexuar manualin për komandën diff.

njeri ndrysh

Komanda diff mund të përdoret në formën e saj më të thjeshtë për të treguar vetëm dallimet mes 2 skedarëve, por gjithashtu mund ta përdorni për të krijuar një skedar diff si pjesë e një strategjie patching siç tregohet në këtë udhëzues për komandën e patch-it Linux .

Një komandë tjetër që mund të përdorni për të krahasuar skedarët është komanda cmp siç tregohet nga ky udhëzues . Kjo krahason skedarët e byte me byte.