Kiel Kompari Du Teksta Dosierojn Uzanta Linukson

Ĉi tiu gvidilo montros al vi kiel uzi Linukson por kompari du dosierojn kaj elsendi sian diferencon al la ekrano aŭ al dosiero.

Vi ne bezonas instali iun specialan programaron por kompari dosierojn per Linukso, sed vi devas scii malfermi fina stacion .

Kiel la ligo gvidita montras, ekzistas multaj manieroj malfermi fina stacion per Linukso. Lin pli simpla estas premi la klavojn CTRL, ALT kaj T samtempe.

Krei la dosierojn por kompari

Por sekvi kune kun ĉi tiu gvidilo kreu dosieron nomitan "file1" kaj enmetu la sekvan tekston:

10 verdaj boteloj staranta sur muro

10 verdaj boteloj staranta sur muro

Se unu verda botelo hazarde falos

Estus 9 verdaj boteloj staranta sur la muro

Vi povas krei dosieron sekvante ĉi tiujn instrukciojn:

  1. Malfermu la dosieron tajpante la sekvan komandon: nano file1
  2. Tajpu la tekston al la nano-redaktilo
  3. Premu CTRL kaj O por konservi la dosieron
  4. Premu CTRL kaj X por eliri la dosieron

Nun kreu alian dosieron nomitan "file2" kaj enmetu la jenan tekston:

10 verdaj boteloj staranta sur muro

Se 1 verda botelo hazarde falos

Estus 9 verdaj boteloj staranta sur la muro

Vi povas krei dosieron sekvante ĉi tiujn instrukciojn:

  1. Malfermu la dosieron tajpante la sekvan komandon: nano file2
  2. Tajpu la tekston al la nano-redaktilo
  3. Premu CTRL kaj O por konservi la dosieron
  4. Premu CTRL kaj X por eliri la dosieron

Kiel Kompari Du Dosierojn Uzanta Linukson

La komando uzita ene de Linukso por montri la diferencojn inter 2 dosieroj nomas la dif-komando.

La plej simpla formo de la dif-komando estas la sekva:

diff dosiero1-dosiero2

Se la dosieroj estas samaj, tiam ne ekzistos eligo kiam uzos ĉi tiun komandon, tamen, ĉar ekzistas diferencoj, vi vidos elirita simila al la sekvaj:

2,4c2,3

<10 verdaj boteloj staranta sur la muro

...

> Se 1 verda botelo hazarde falos

> Estus 9 verdaj boteloj staranta sur la muro

Komence, la eligo ŝajnas konfuza, sed kiam vi komprenas la terminologion, ĝi estas sufiĉe logika.

Uzante viajn proprajn okulojn vi povas vidi, ke la diferencoj inter la dosieroj estas kiel sekvas:

La eligo de la dif-komando montras, ke inter linioj 2 kaj 4 de la unua dosiero kaj linioj 2 kaj 3 de la dua dosiero estas diferencoj.

Ĝi tiam listigas la liniojn de 2 ĝis 4 el la unua dosiero sekvita de la 2 malsamaj linioj en la dua dosiero.

Kiel Montri Montri Se la Dosieroj Estas Malsamaj

Se vi nur volas scii ĉu la dosieroj estas malsamaj kaj vi ne interesas, en kiuj malsamaj linioj vi povas ekzekuti la jenan komandon:

diff -q file1-dosiero2

Se la dosieroj estas malsamaj jenaj estos montritaj:

Dosieroj dosiero1 kaj dosiero2 diferencas

Se la dosieroj estas samaj, tiam nenio montriĝas.

Kiel montri mesaĝon Se la dosieroj estas la samaj

Kiam vi ordonas, vi volas scii, ke ĝi funkciis ĝuste, do vi volas sendi mesaĝon kiam vi kuras la difkomandon sendepende pri ĉu la dosieroj estas samaj aŭ malsamaj

Por atingi ĉi tiun postulon uzante la difkomandon, vi povas uzi la jenan komandon :.

diff -s file1-dosiero2

Nun se la dosieroj estas samaj, vi ricevos la jenan mesaĝon:

Dosieroj dosiero1 kaj dosiero2 estas identaj

Kiel Produkti la Diferencojn Flante de Flanko

Se estas multaj diferencoj, ĝi tre rapide konfuzas, kiom la diferencoj vere estas inter la du dosieroj.

Vi povas ŝanĝi la eliron de la dif-komando tiel ke la rezultoj estas montritaj flanke. Por fari ĉi tion kuri la sekvantan komandon:

diff -y dosiero1-dosiero2

La eligo por la dosiero uzas la simbolo por montri diferencon inter la du linioj, al montri linion kiu estis aldonita.

Kurioze, se vi plenumas la komandon per niaj dosieroj de pruvo, ĉiuj linioj montros kiel malsamaj krom la lasta linio de dosiero 2, kiu estos montrita kiel forigita.

Restriktanta la Kolumnajn Larĝojn

Komparinte du dosierojn laŭflanke, ĝi povas malfacile legi, se la dosieroj havas multajn kolumnojn de teksto.

Restrikti kelkajn kolumnojn uzu la jenan komandon:

diff --width = 5 dosiero-dosiero2

Kiel Ignori Kaŝajn Diferenciojn Kiam Komparanta Dosierojn

Se vi volas kompari du dosierojn sed vi ne zorgas, ĉu la kazo de la literoj estas la sama inter la du dosieroj, tiam vi povas uzi la jenan komandon:

diff -i dosiero1-dosiero2

Kiel Ignori Transirante Blankan Spacon ĉe la Fino de Linio

Se komparante la dosierojn vi rimarkas multe da diferencoj kaj la diferencoj estas kaŭzitaj de blanka spaco ĉe la fino de la linioj, vi povas preterlasi ĉi tiujn kiel montriĝojn kiel ŝanĝojn per la sekva komando:

diff -Z file1-dosiero2

Kiel Ignori Ĉiujn Blankajn Spacajn Diferencojn Inter Du Dosieroj

Se vi nur interesas la tekston en dosiero kaj vi ne zorgas ĉu estas pli da spacoj ol unu la alia, vi povas uzi la jenan komandon:

diff -w file1-dosiero2

Kiel Ignori Blankajn Liniojn Kiam Komparanta Du Dosierojn

Se vi ne zorgas, ke unu dosiero eble havas kromajn malplenajn liniojn en ĝi, tiam vi povas kompari la dosierojn per la sekva komando:

diff -B file1-dosiero2

Resumo

Vi povas trovi pli da informoj legante la manlibron por la dif-komando.

viro dif

La difa komando povas esti uzata en ĝia plej simpla formo, por montri al vi la diferencojn inter 2 dosieroj, sed vi ankaŭ povas uzi ĝin por krei difran dosieron kiel parton de klaka strategio, kiel estas montrita en ĉi tiu gvidilo al la Linuksa diakkomando .

Alia komando, kiun vi povas uzi por kompari dosierojn, estas la cmp-komando, kiel montras ĉi tiu gvidilo . Ĉi tio komparas dosierojn bajte per bajto.