Linux арқылы екі мәтін файлын қалай салыстыру керек

Бұл нұсқаулық сіз Linux-ды екі файлды салыстыру және олардың экранға немесе файлға айырмашылығын анықтау үшін қалай пайдалану керектігін көрсетеді.

Linux файлдарын салыстыру үшін кез-келген арнайы бағдарламалық жасақтаманы орнатудың қажеті жоқ, бірақ терминал терезесін ашу туралы білу қажет.

Байланыстырылған нұсқаулықта Linux арқылы терминал терезесін ашудың бірнеше жолы бар екенін көрсетті. Ең қарапайым - CTRL, ALT және T пернелерін бір уақытта басу.

Салыстыру үшін файлдарды жасау

Осы нұсқаулықты орындау үшін «file1» атты файл жасаңыз және келесі мәтінді енгізіңіз:

Қабырғада тұрған 10 жасыл бөтелке

Қабырғада тұрған 10 жасыл бөтелке

Бір жасыл бөтелке кездейсоқ түсіп кетуі керек

Қабырғада 9 жасыл шөлмек тұрды

Сіз мына нұсқауларды орындау арқылы файл жасай аласыз:

  1. Келесі пәрменді теру арқылы файлды ашыңыз: nano file1
  2. Мәтінді nano редакторына енгізіңіз
  3. Файлды сақтау үшін CTRL және O пернелерін басыңыз
  4. Файлдан шығу үшін CTRL және X пернелерін басыңыз

Енді «file2» атты басқа файл жасаңыз және келесі мәтінді енгізіңіз:

Қабырғада тұрған 10 жасыл бөтелке

1 жасыл бөтелке кездейсоқ түсіп кетуі керек

Қабырғада 9 жасыл бөтелкелер тұрды

Сіз мына нұсқауларды орындау арқылы файл жасай аласыз:

  1. Келесі пәрменді теріп, файлды ашыңыз: nano file2
  2. Мәтінді nano редакторына енгізіңіз
  3. Файлды сақтау үшін CTRL және O пернелерін басыңыз
  4. Файлдан шығу үшін CTRL және X пернелерін басыңыз

Linux-ды пайдаланатын екі файлды қалай салыстыру керек

Linux файлында 2 файл арасындағы айырмашылықты көрсету үшін қолданылатын команда diff дифференциалды деп аталады.

Diff командасының ең қарапайым түрі:

diff file1 файл2

Егер файлдар бірдей болса, онда осы пәрменді пайдалану кезінде шығыс болмайды, алайда, айырмашылықтар болса, келесіге ұқсас нәтижелерді көресіз:

2,4с2,3

<10 жасыл бөтелкелер қабырғаға тұрды

<Бір жасыл бөтелке кездейсоқ түсіп кетуі керек

<Қабырғада тұрған 9 жасыл бөтелке болады

...

> 1 жасыл бөтелке кездейсоқ түсіп кетуі керек

> Қабырғада тұрған 9 жасыл бөтелке болады

Бастапқыда, шығу шатастырып көрінуі мүмкін, бірақ терминологияны түсінгеннен кейін, бұл өте қисынды болады.

Өз көздеріңізді пайдаланып, 2 файл арасындағы айырмашылықтар келесідей:

Diff командасынан шыққан нәтиже бірінші файлдың 2 және 4 жолдары мен екінші файлдың 2 және 3 жолдарының арасында айырмашылықтар бар екенін көрсетеді.

Содан кейін бірінші файлдан 2-ден 4-ге дейінгі жолдарды, ал екінші файлдағы 2 түрлі жолды тізеді.

Файлдар басқаша болған жағдайда ғана көрсету

Егер сіз файлдардың әр түрлі екенін білсеңіз және сіз қандай жолдар өзгеше болмаса, келесі пәрменді іске қосасыз:

diff -q file1 файл2

Егер файлдар өзгеше болса, төмендегілер көрсетіледі:

Файлдар1 және файл2 файлдары әртүрлі

Егер файлдар бірдей болса, ештеңе көрсетілмейді.

Егер файлдар бірдей болса, хабарды қалай көрсету керек

Сіз пәрменді іске қосқан кезде, ол дұрыс жұмыс істегенін білгіңіз келсе, дискідегі пәрменді іске қосқанда хабардың көрсетілуін қаласаңыз, файлдар бірдей немесе әртүрлі бола ма

Бұл талапты diff қолдана отырып қолдана алу үшін келесі пәрменді қолдануға болады :.

diff-файл1 файл2

Енді файлдар бірдей болса, сіз келесі хабарды аласыз:

Файлдар file1 және file2 бірдей

Арасындағы айырмашылықтарды қалайша жасай аламыз

Егер айырмашылықтар көп болса, онда бұл екі файл арасындағы айырмашылықтардың бар екендігі туралы өте тез шатасып кетуі мүмкін.

Сіз нәтижелер нәтижелерін бірге көрсететін етіп diff командасының шығуын өзгерте аласыз. Мұны орындау үшін келесі пәрменді іске қосыңыз:

diff -y файл1 файл2

Файл үшін шығыс | | символы екі сызық арасындағы айырмашылықты көрсету үшін, <жойылған сызықты көрсету үшін және> қосылған сызықты көрсету үшін.

Бір қызығы, біздің демонстрациялық файлдарымызды қолданатын пәрменді іске қосатын болсаңыз, онда барлық сызықтар жойылған ретінде көрсетілетін 2 файлдың соңғы жолынан басқа әр түрлі болады.

Бағанның енін шектеу

Екі файлды бір-бірімен салыстыра отырып, файлдарда мәтіннің көптеген бағандары бар-жоғын білу қиын болуы мүмкін.

Бірқатар бағандарды шектеу үшін келесі пәрменді пайдаланыңыз:

diff - width = 5 файл file2

Файлдарды салыстыру кезінде жағдайдың айырмашылығын елемеу жолы

Егер сіз екі файлды салыстырғыңыз келсе, бірақ сіз екі файлдың арасындағы әріптердің жағдайы бірдей болса, онда сіз келесі пәрменді пайдалана аласыз:

diff -i file1 файл2

Сызықтың соңындағы ақ кеңістікті елемеу жолы

Егер сіз файлдарды салыстыру кезінде айырмашылықтарды байқасаңыз және айырмашылықтар жолдың соңындағы ақ кеңістіктен болса, оларды келесі пәрменді іске қосу арқылы өзгерту ретінде көрсетуге болады:

diff -z file1 файл2

Барлық ақ кеңістіктегі екі файл арасындағы айырмашылықтарды қалай елемеуге болады

Егер сіз тек файлдағы мәтінді қызықтыратын болсаңыз және басқа біреуден көп бос орын бар-жоғын ойласаңыз, келесі пәрменді пайдалана аласыз:

diff -w file1 file2

Екі файлды салыстыру кезінде бос жолдарды елемеу жолы

Егер сізде бір файлда қосымша бос жолдар болуы мүмкін деп ойламасаңыз, файлдарды төмендегі пәрменді пайдаланып салыстыруға болады:

diff -B файл1 файл2

Резюме

Қосымша ақпарат алу үшін diff командасының нұсқаулығын оқып білуге ​​болады.

адам айырмашылығы

Diff пәрменін қарапайым пішімде пайдалануға болады, тек 2 файл арасындағы айырмашылықты көрсетуге болады, бірақ оны diff файлын Linux патигі пәрменіне арналған нұсқаулықта көрсетілгендей түзету стратегиясының бір бөлігі ретінде пайдалану үшін пайдалануға болады.

Файлдарды салыстыру үшін пайдалануға болатын тағы бір пәрмен осы нұсқаулықта көрсетілгендей cmp пәрмені болып табылады . Бұл файл байтын байтпен салыстырады.