Чӣ гуна муқоиса кардани ду файлҳои матнро истифода баред Linux

Ин дастур шуморо ба шумо нишон медиҳад, ки Linux чӣ гуна истифода бурда мешавад, ки ду файлро муқоиса кунад ва фарқи худро ба экран ё ба файл табдил диҳад.

Ба шумо лозим нест, ки ягон нармафзори махсусро бо мақсади муқоисаи файлҳои Linux истифода баред, аммо шумо бояд донед , ки равзанаи терминалро кушоед .

Тавре ки дастурамалҳои мушаххас нишон медиҳад, роҳҳои зиёде барои кушодани тирезаи терминал бо Linux истифода мешаванд. Соддатарин ба тугмаи CTRL, ALT ва T -ро пахш карда мешавад.

Сохтани файлҳои муқоиса

Барои пайравӣ дар ин дастур, файл файли "file1" -ро эҷод мекунад ва матни зеринро ворид кунед:

10 шиша сабз дар девор истодаанд

10 шиша сабз дар девор истодаанд

Агар як шишаи сабз ба таври ногаҳонӣ фурӯ равад

9 шиша сабз дар девор истодааст

Шумо метавонед файлро бо дастурҳои зерин офаред:

  1. Файлро бо формулаи зерин кушоед: file nano1
  2. Матнро ба муҳаррири нано нависед
  3. Барои захира кардани файл, CTRL ва O -ро пахш кунед
  4. CTRL ва X-ро пахш кунед, то файлро кушояд

Акнун файлест, ки "file2" номидааст ва матни зеринро нависед:

10 шиша сабз дар девор истодаанд

Агар 1 шишаи сабз ба таври ногаҳонӣ фурӯ равад

Дар он 9 шиша сабз дар девор истодаанд

Шумо метавонед файлро бо дастурҳои зерин офаред:

  1. Файлро бо формулаи зерин кушоед: file nano2
  2. Матнро ба муҳаррири нано нависед
  3. Барои захира кардани файл, CTRL ва O -ро пахш кунед
  4. CTRL ва X-ро пахш кунед, то файлро кушояд

Чӣ гуна ба ду файлҳо муқоиса кунед Linux

Фармони мазкурро дар Linux истифода бурда, нишон медиҳад, ки фарқи байни ду файлҳо фармони фармоиш номида мешавад.

Соддатарин шакли фармоиши фармоиш чунин аст:

diff file1 file2

Агар файлҳо якхела бошанд, вақте ки ин фармонро иҷро кардан мумкин нест, аммо, чунки фарқиятҳо вуҷуд доранд, шумо чунин натиҷаҳоро ба монанди зерин мебинед:

2,4c2,3

<10 шишаҳои сабз дар девор истодаанд

<Агар як шишаи сабз гумроҳ шавад

<Одамон 9 шиша сабз дар девор истодаанд

...

> Агар 1 шишаи сабз ба таври ногаҳонӣ фурӯ равад

Дар он 9 шиша сабз дар девор истодаанд

Аввалан, истеҳсоли маҳсулот дар якҷоягӣ боқӣ мемонад, аммо вақте ки шумо истилоҳро мефаҳмед, ин манъ аст.

Истифодаи чашмҳои шахсӣ шумо мебинед, ки тафовут байни ду файлҳо инҳоянд:

Кадом аз фармони фармони нишон медиҳад, ки байни хатҳои 2 ва 4 парвандаи аввал ва хатҳои 2 ва 3-и дуюм тафовут вуҷуд дорад.

Он гоҳ пас аз хатогиҳо аз 2 то 4-ро аз файли аввал рӯйхат кунед ва пас аз 2 хатти гуногуни файли дуюм.

Чӣ тавр танҳо нишон дода мешавад, агар файлҳо гуногун бошанд

Агар шумо танҳо мехоҳед, ки оё файлҳо гуногунанд ва шумо дар кадом сатрҳо фарқият надоред шумо метавонед фармонро иҷро кунед:

diff -q file1 file2

Агар файлҳо гуногун бошанд, инҳо нишон дода мешаванд:

Файли file1 ва file2 фарқ мекунад

Агар файлҳо якхела бошанд, ягон чиз намоиш дода намешавад.

Чӣ тавр нишон диҳед, ки агар файлҳо ҳамон бошад

Вақте, ки шумо фармонро иҷро мекунед, мехоҳед бидонед, ки он дуруст кор карда истодааст, пас шумо мехоҳед, ки паёмро дар вақти интихоби фармоиш, новобаста аз он, ки файлҳо якхела

Барои ноил шудан ба ин талабот бо истифодаи фармони фармони, Шумо метавонед фармонро ба поён расонед:.

diff -s file1 file2

Акнун, агар файлҳо ҳамон як паёми зеринро гиранд:

Файлҳои file1 ва file2 баробар мебошанд

Чӣ гуна метавон фарқиятро бо тарафҳо ба даст овард

Агар бисёре аз тафовутҳо вуҷуд дошта бошанд, он метавонад зуд ба зудӣ дарк кунад, ки чӣ гуна фарқият дар байни ду файлҳо чӣ гуна аст.

Шумо метавонед маҳлоти фармоиши фарқро тағйир диҳед, то ки натиҷаҳои он бо тарафҳо нишон дода шаванд. Барои ин корро иҷро кунед:

diff -y file1 file2

Натиҷаи парванда | | барои нишон додани фарқияти байни ду сатр, <барои нишон додани сатре, ки тоза карда шуд ва> нишон дода шудааст, нишон дода шудааст, ки сатре, ки илова карда шудааст.

Ҷолиб аст, ки агар шумо фармонро бо файлҳои намоишии худ истифода баред, пас ҳамаи хатҳо ба монанди фарқияти охирини файли 2 нишон дода мешавад, ки он ҳамчун нест карда шудааст.

Маҳдудиятҳои Widths -ро маҳдуд мекунад

Ҳангоми муқоисаи ду файл ба тарафи тарафи он метавонад душвор бошад, агар файлҳо якчанд сутунҳои матн дошта бошанд.

Барои маҳдуд кардани як қатор сутунҳо ин фармонро истифода баред:

diff --width = 5 file2 file2

Чӣ тавр фаромӯш кардани парвандаҳои гуногун ҳангоми муқоиса кардани файлҳо

Агар шумо хоҳед, ки ду файлро муқоиса кунед, аммо шумо намехоҳед, ки парвандаи ҳар дуи файлҳо дар байни ду файлҳо якхела бошанд, шумо метавонед фармонҳои зеринро истифода баред:

diff -i file1 file2

Чӣ тавр манъ кардани Space Space дар охири сатр

Агар ҳангоми муқоисаи файлҳо шумо фарқияти фарқиятро фаромӯш накунед ва фарқиятҳо бо фазои сафед дар охири сатрҳо, шумо метавонед онҳоро ҳамчун тағирот бо иҷро кардани фармони зерин гузоред:

diff -Z file1 file2

Чӣ гуна ба ҳама фарқиятҳои Space Space дар байни ду дафъа аҳамият надиҳед

Агар шумо фақат дар матн дар як файл шавқовар бошед ва шумо намехоҳед, ки дар яке аз бозиҳои дигар ҷойҳои зерин истифода кунед:

diff -w file1 file2

Чӣ тавр ба лавҳаҳои банақшагирӣ ҳангоми муқоиса ду дафтар

Агар шумо хомӯш накунед, ки ягон файл метавонад дар сатрҳои иловагӣ ҷой дошта бошад, шумо метавонед файлҳоро бо истифодаи фармонҳои зерин муқоиса кунед:

diff -B file1 file2

Натиҷа

Шумо метавонед маълумоти бештарро бо хондани дастури барои фармони diff.

мард diff

Фармони фармонро метавон осонтар аз шакли дутарафа истифода бурд, аммо шумо фақат ба шумо фарқиятҳои байни ду файлро нишон медиҳед, аммо шумо метавонед онро барои эҷоди файли diff ҳамчун як қисми стратегияи насбшудаи тавре, ки дар ин дастур нишон додаед, фармон диҳед .

Фармони дигаре, ки шумо метавонед барои муқоисаи файлҳо истифода кунед, фармонхати cmp, ки дар ин дастур нишон дода шудааст . Ин ба воситаи byte ба файлҳои файлҳо баробар аст.