Ovaj vodič će vam pokazati kako koristiti Linux za upoređivanje dva fajla i iznošenje njihove razlike na ekran ili u datoteku.
Ne morate instalirati bilo koji poseban softver kako biste upoređivali datoteke koristeći Linux, ali morate znati kako otvoriti prozor terminala .
Kako povezani vodič pokazuje da postoji mnogo načina za otvaranje prozora terminala koristeći Linux. Najjednostavnije je istovremeno pritisnuti tastere CTRL, ALT i T.
Kreiranje datoteka za upoređivanje
Da biste pratili ovaj vodič, kreirajte datoteku pod nazivom "file1" i unesite sledeći tekst:
10 zelenih boca stoje na zidu
10 zelenih boca stoje na zidu
Ako bi jedna zelena bočica slučajno pala
Na zidu bi bilo 9 zelenih boca
Možete kreirati datoteku slijedeći sljedeća uputstva:
- Otvorite datoteku upisivanjem sledeće naredbe: nano file1
- Tekst unesite u nano editor
- Pritisnite CTRL i O da biste sačuvali datoteku
- Pritisnite CTRL i X da izađete iz datoteke
Sada kreirajte drugu datoteku pod nazivom "file2" i unesite sledeći tekst:
10 zelenih boca stoje na zidu
Ako 1 zelena bočica slučajno pada
Na zidu bi bilo 9 zelenih boca
Možete kreirati datoteku slijedeći sljedeća uputstva:
- Otvorite datoteku upisivanjem sledeće naredbe: nano file2
- Tekst unesite u nano editor
- Pritisnite CTRL i O da biste sačuvali datoteku
- Pritisnite CTRL i X da izađete iz datoteke
Kako usporediti dva fajla koristeći Linux
Komanda koja se koristi u Linuxu da bi pokazala razlike između 2 datoteka se naziva komanda diff.
Najjednostavniji oblik diff naredbe je sledeći:
diff file1 file2
Ako su datoteke iste onda neće biti izlaza kada se koristi ova komanda, međutim, pošto postoje razlike, videćete izlaz sličan sledećem:
2,4c2,3
<10 zelenih boca stoje na zidu
... > Ako 1 zelena boca treba slučajno pasti > Na zidu bi bilo 9 zelenih boca Na početku, rezultat može izgledati zbunjujuće, ali kada razumete terminologiju, prilično je logičan. Upotrebom sopstvenih očiju možete videti da su razlike između 2 fajlova sledeće: Izlaz iz naredbe diff pokazuje da između linija 2 i 4 prve datoteke i redova 2 i 3 druge datoteke postoje razlike. Onda navodi linije od 2 do 4 iz prve datoteke, a zatim 2 različite linije u drugoj datoteci. Ako želite samo da znate da li su datoteke drugačije i da vas ne zanima koji su redovi drugačiji, možete pokrenuti sljedeću komandu: diff -q file1 file2 Ako su datoteke različite, prikazaće se sledeće: Datoteke file1 i file2 se razlikuju Ako su datoteke iste onda se ne prikazuje ništa. Kada pokrenete komandu, želite da znate da je ispravno funkcionisala, tako da želite da se poruka prikazuje kada pokrenete komandu diff, bez obzira da li su datoteke iste ili različite Da biste ostvarili ovaj zahtev pomoću naredbe diff, možete koristiti sljedeću naredbu :. diff -s file1 file2 Sada, ako su datoteke iste, dobićete sledeću poruku: Datoteke file1 i file2 su identične Ako ima puno razlike onda može vrlo brzo postati zbunjujuće u vezi sa razlikama između dva fajla. Izlaz komande diff možete promijeniti tako da se rezultati prikazuju uz rame. Da biste to uradili pokrenite sledeću komandu: diff -y file1 file2 Izlaz za datoteku koristi | simbol pokazuje razliku između dve linije, a Zanimljivo je da ako pokrenete komandu pomoću naših demonstracionih datoteka, sve linije će se pokazati drugačije, osim poslednje linije datoteke 2 koja će biti prikazana kao izbrisana. Prilikom upoređivanja dve datoteke jedan pored drugog može biti teško čitati ako datoteke imaju puno kolona teksta. Da biste ograničili broj stupaca koristite sledeću komandu: diff --width = 5 datoteka2 Ako želite da uporedite dve datoteke, ali vam nije briga da li je slučaj slova isti između dva fajla, onda možete koristiti sledeću komandu: diff -i file1 file2 Ako pri upoređivanju datoteka primećujete opterećenje razlike i razlike su uzrokovane bijelim prostorom na kraju linija, možete ih isprobati kao prikazivanjem kao izmena tako što ćete pokrenuti sljedeću naredbu: diff -Z file1 file2 Ako vas samo interesuje tekst u datoteci i ne zanima vas da li ima više prostora u jednoj od drugog, možete koristiti sledeću komandu: diff -w file1 file2 Ako vam nije briga da jedna datoteka može imati dodatne prazne linije u njemu onda možete upoređivati datoteke koristeći sljedeću komandu: diff -B file1 file2 Više informacija možete pronaći tako što ćete čitati priručnik za komandu diff. čovek diff Ova diff naredba se može koristiti u najjednostavnijem obliku kako bi vam samo pokazala razlike između 2 datoteka, ali možete ga koristiti i za kreiranje diff datoteke kao dela strategije za patching, kao što je prikazano u ovom vodiču za komandu Linux patch . Druga komanda koju možete koristiti za upoređivanje datoteka je cmp naredba kao što je prikazano u ovom vodiču . Ovo upoređuje datoteke bajta bajtom. Kako samo pokazati da li su fajlovi različiti
Kako prikazati poruku Ako su datoteke iste
Kako proizvesti razlike jedni pored drugih
Ograničavanje širina kolona
Kako da ignorišemo razliku slučaja prilikom upoređivanja datoteka
Kako ignorisati dodirni beli prostor na kraju linije
Kako ignorisati sve razlike u bijelom prostoru između dva fajla
Kako ignorisati prazne linije prilikom upoređivanja dva fajla
Sažetak