Როგორ შევადაროთ ორი ტექსტური ფაილი 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 file1 file2

თუ ფაილი იგივეა, მაშინ ამ ბრძანების გამოყენებისას გამომავალი არ იქნება, რადგან არსებობს განსხვავებები, რომლებიც გამოიყურება შემდეგნაირად:

2,4c2,3

<10 მწვანე ბოთლი კედელზე იდგა

<თუ ერთი მწვანე ბოთლი შემთხვევით დაეცემა

კედელზე იდგა 9 მწვანე ბოთლი

...

> თუ 1 მწვანე ბოთლი შემთხვევით დაეცემა

> კედელზე იდგება 9 მწვანე ბოთლი

თავდაპირველად, გამომავალი შეიძლება ჩანდეს დამაბნეველი, მაგრამ კიდევ გესმით ტერმინოლოგია, ეს არის საკმაოდ ლოგიკური.

თქვენი თვალების გამოყენებით შეგიძლიათ იხილოთ, რომ განსხვავებები 2 ფაილს შორისაა:

გამომავალი ბრძანების შედეგები გვიჩვენებს, რომ პირველი ფაილების 2 და 4 და მეორე ხაზის 2 და 3 ხაზებს შორის განსხვავებაა.

მას შემდეგ ჩამოთვლილია ხაზები 2 დან 4 პირველი ფაილი, რასაც მოჰყვა 2 სხვადასხვა ხაზები მეორე ფაილი.

როგორ უბრალოდ აჩვენე თუ ფაილი განსხვავებულია

თუ თქვენ უბრალოდ გსურთ იცოდეთ თუ ფაილი განსხვავებულია და არ ხართ დაინტერესებული, თუ რომელი ხაზები განსხვავებულია, შეგიძლიათ აწარმოოთ შემდეგი ბრძანება:

diff-q file1 file2

თუ ფაილი განსხვავებულია შემდეგი იქნება ნაჩვენები:

ფაილები file1 და file2 განსხვავდება

თუ ფაილი იგივეა, მაშინ არაფერი არ არის ნაჩვენები.

როგორ დავანახოთ შეტყობინება თუ ფაილი იგივეა

ბრძანების გაშვებისას თქვენ გინდათ ვიცოდეთ, რომ იგი სწორად მუშაობს, ასე რომ, გსურთ, რომ გამოჩნდეს შეტყობინებები, როდესაც აწარმოებთ განსხვავებულ ბრძანებას, მიუხედავად იმისა, არის თუ არა ფაილი იგივე ან სხვა

იმისათვის, რომ მივაღწიოთ ამ მოთხოვნას გამოყენებით diff ბრძანება, შეგიძლიათ გამოიყენოთ შემდეგი ბრძანება :.

diff -s file1 file2

ახლა თუ ფაილი იგივეა, თქვენ მიიღებთ შემდეგ შეტყობინებას:

ფაილები file1 და file2 იდენტურია

როგორ აწარმოოს განსხვავებები მხარეების გვერდით

თუ არსებობს უამრავი განსხვავება მაშინ ძალიან სწრაფად შეიძლება გაუგებარია, თუ რა განსხვავებები ფაქტობრივად ორი ფაილია.

თქვენ შეგიძლიათ შეცვალოთ diff ბრძანების გამომუშავება ისე, რომ შედეგი აისახოს გვერდით. იმისათვის, რომ ამის გაკეთება შეასრულოთ შემდეგი ბრძანება:

diff- ფაილი file1 file2

გამომავალი ფაილი იყენებს | სიმბოლო, რათა გამოიჩინოს განსხვავება ორ ხაზს შორის, <უნდა აჩვენოს ხაზი, რომელიც წაიშალა და> გამოვყოთ ხაზი, რომელიც დაემატა.

საინტერესოა, თუ აწარმოებთ ბრძანებას ჩვენი სადემონსტრაციო ფაილების გამოყენებით, მაშინ ყველა ხაზი გამოჩნდება როგორც განსხვავებული, ისე ბოლო ფაილის ფაილის 2, რომელიც ნაჩვენები იქნება როგორც წაშლილი.

შეზღუდვა სვეტების სიგრძეზე

ორ ფაილს გვერდს ადარებს, შეიძლება წაკითხული იყოს თუ არა ტექსტის უამრავი სვეტი.

რიგი სვეტების შეზღუდვისთვის გამოიყენეთ შემდეგი ბრძანება:

diff --width = 5 ფაილის file2

როგორ იგნორირება საქმე განსხვავებები როდესაც შედარება ფაილები

თუ გსურთ შევადაროთ ორი ფაილი, მაგრამ არ მაინტერესებს თუ არა ასოების შემთხვევაში იგივეა ორი ფაილი, მაშინ შეგიძლიათ გამოიყენოთ შემდეგი ბრძანება:

diff -i file1 file2

როგორ იგნორირება მაშტაბით თეთრი სივრცე ხაზის ბოლოს

თუ ფაილების შედარებისას შეამჩნევთ განსხვავებები და განსხვავებები გამოწვეულია თეთრ სივრცეში ხაზების ბოლოს, შეგიძლიათ გამოტოვოთ ისინი, როგორც ცვლილებების სახით აჩვენებს შემდეგ ბრძანებებს:

diff -Z file1 file2

როგორ იგნორირება ყველა თეთრი ფართი განსხვავებები ორი ფაილი

თუ თქვენ მხოლოდ დაინტერესებული ხართ ტექსტში ტექსტში და არ აინტერესებთ, არის თუ არა მეტი სივრცე სხვაზე, შეგიძლიათ გამოიყენოთ შემდეგი ბრძანება:

diff -w file1 file2

როგორ იგნორირება ცარიელი ხაზები როდესაც შედარებით ორი ფაილი

თუ არ აინტერესებთ, ერთი ფაილი შეიძლება ჰქონდეს დამატებითი ცარიელი ხაზები მას შემდეგ შეგიძლიათ შეადაროთ ფაილი შემდეგი ბრძანებით:

diff -B file1 file2

შემაჯამებელი

შეგიძლიათ იპოვოთ დამატებითი ინფორმაცია სახელმძღვანელოს წაკითხვის ინსტრუქციით.

კაცი განსხვავდება

განსხვავებული ბრძანება შეიძლება გამოყენებულ იქნას მისი მარტივი ფორმით, რათა გაჩვენოთ განსხვავებები 2 ფაილს შორის, მაგრამ ასევე შეგიძლიათ გამოვიყენოთ ის, რომ შეიქმნას განსხვავებული ფაილები, როგორც ნაწილი patching სტრატეგია, როგორც ნაჩვენებია ამ სახელმძღვანელოში Linux Patch ბრძანება .

კიდევ ერთი ბრძანება შეგიძლიათ გამოიყენოთ ფაილების შედარება, რომელიც არის cmp ბრძანება, რომელსაც ეს სახელმძღვანელო აჩვენებს . ეს შეედრება ფაილების byte by byte.