Diff е инструмент за командния ред за Unix системи, който ви позволява да сравнявате два файла или директории и да видите разликите между тях. Той е идеален за сравняване на стари и нови версии на файлове, за да видите какво е променено. В тази статия ще ви покажем как можете да използвате diff за да сравнявате лесно файлове в Linux.

Сравняване на файлове с разлики

1. Отворете терминален прозорец.

2. Въведете diff и пътищата към два файла, които искате да сравните. В този случай сравнявам две малки Python програми на компютъра си, затова използвам следната команда:

 diff ~ / Desktop / python-guessing-game-1.py ~ / Desktop / python-guessing-game-2.py 

3. Натиснете Enter, за да изпратите командата. Полученият дисплей ще ви покаже всички различни линии между файловете. Сравнените номера на редовете ще бъдат показани като "1c1", което означава, че първият ред е сравнен с първия ред и са открити следните разлики.

4. За да видите изглед отстрани на файловете и техните разлики, използвайте -y след diff . Например:

 diff -y ~ / Desktop / python-guessing-game-1.py ~ / Desktop / python-guessing-game-2.py 

Всяка линия с символ на тръба ( | ) е линия с разлика. Просто не забравяйте да разширите най-напред своя терминален прозорец или може да имате трудно да видите дисплея.

Сравняване на файлове с Meld

Функционалността на diff може да бъде достъпна и чрез Meld, GUI за diff . Като се има предвид, че потребителският интерфейс на diff може да бъде трудно да се получи дръжка, Meld е полезен инструмент.

1. Инсталирайте Meld от командния ред, като отворите терминала и пишете:

 sudo apt-get -y инсталирате 

или

 sudo yum install meld 

за Yum-базирани дистрибуция.

Това ще инициализира подходящия мениджър на пакети и ще започне инсталирането на Meld. Обърнете внимание, че -y автоматично ще каже "да" на всички подкана; моля, премахнете го, ако предпочитате по-скоро тези указания ръчно.

2. Въведете вашата администраторска парола, когато получите подкана. Когато видите командния ред отново, инсталацията е завършена и Meld може да бъде отворена.

3. Когато отворите Meld, ще видите три опции: Сравнение на файлове, Сравнение на директории и Изглед за контрол на версията. Кликнете върху "Сравнение на файловете".

4. Ще се появи две падащи менюта, като и двете ще се четат "(None)". Кликнете върху една, за да изберете файл за сравнение.

5. Щракнете върху другото падащо меню, за да изберете друг файл за сравнение.

6. Кликнете върху бутона "Сравнение".

7. Следващият прозорец обобщава всички разлики, открити между два файла. Червените знаци са разлики, а синият фон показва, че има разлика в този ред. Зеленият фон показва, че даден ред съществува в един файл, но не и в другия.

8. За да навигирате между разликите, кликнете върху бутоните нагоре и надолу в лентата с менюта. Можете също да кликнете директно в документа с мишката.

Манипулиране на файлове в Meld

В допълнение към извършването на сравнения, Meld ви позволява да променяте сравняваните файлове. Meld ще продължи да анализира документа за промени при промяна на която и да е версия и можете да натиснете "Control + Z" по всяко време, за да отмените промените.

1. За да копирате промените от един файл в друг, кликнете върху малките черни стрелки между промените. Ако кликнете върху стрелката отляво, например, ще използвате линията на документа вляво, за да презапишете десния документ.

2. Линиите могат да се вмъкват и в документи без презапис. Ако задържите клавиша за управление, ще видите стрелките от последната стъпка да се превърнат в диагонални двойки. Кликнете върху стрелката, насочена нагоре, за да поставите линия над уникалната линия или стрелката, насочена надолу, за да вмъкнете линия по-долу.

3. Накрая можете да въведете директно в документа. Просто поставете курсора както обикновено и започнете да пишете.

4. След като приключите с извършването на промени, кликнете върху бутона Запазване, за да запазите файловете си.

заключение

Можете да използвате или diff или Meld, за да сравнявате файлове в Linux. Meld е по-пълно приложение, но нищо не бие командния ред за скоростта.