Wyszukiwanie w witrynie

Jak znaleźć różnicę między dwoma katalogami za pomocą narzędzi porównywania i łączenia


We wcześniejszym artykule sprawdziliśmy 9 najlepszych narzędzi do porównywania i różnicowania plików dla systemu Linux, a w tym artykule opiszemy, jak znaleźć różnicę między dwoma katalogami w systemie Linux.

Zwykle do porównywania dwóch plików w systemie Linux używamy diff – prostego i oryginalnego narzędzia wiersza poleceń systemu Unix, które pokazuje różnicę między dwoma plikami komputerowymi; porównuje pliki linia po linii i jest łatwy w obsłudze, jest preinstalowany w większości, jeśli nie we wszystkich dystrybucjach Linuksa.

Pytanie brzmi: jak uzyskać różnicę między dwoma katalogami w systemie Linux? Tutaj chcemy wiedzieć, które pliki/podkatalogi są wspólne w obu katalogach, te, które są obecne w jednym katalogu, ale nie w drugim.

Konwencjonalna składnia uruchamiania programu diff jest następująca:

diff [OPTION]… FILES
diff options dir1 dir2 

Domyślnie jego dane wyjściowe są uporządkowane alfabetycznie według nazwy pliku/podkatalogu, jak pokazano na zrzucie ekranu poniżej. W tym poleceniu przełącznik -q informuje program diff, aby raportował tylko wtedy, gdy pliki się różnią.

diff -q directory-1/ directory-2/

Ponownie, diff nie wchodzi do podkatalogów, ale możemy użyć przełącznika -r, aby również przeczytać podkatalogi w ten sposób.

diff -qr directory-1/ directory-2/ 

Korzystanie z narzędzia Połącz wizualne różnice i łączenie

Dostępna jest fajna opcja graficzna o nazwie meld (wizualne narzędzie porównywania i łączenia dla pulpitu GNOME) dla tych, którzy lubią używać myszy, można ją zainstalować w następujący sposób.


sudo apt install meld         [On Debian, Ubuntu and Mint]
sudo yum install meld         [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo emerge -a sys-apps/meld  [On Gentoo Linux]
sudo apk add meld             [On Alpine Linux]
sudo pacman -S meld           [On Arch Linux]
sudo zypper install meld      [On OpenSUSE]   
sudo brew install meld        [On macOS]  

Po zainstalowaniu wyszukaj „meld” w Ubuntu Dash lub Linux Mint Menu w Przeglądzie działań > na pulpicie Fedory lub CentOS i uruchom go.

Poniżej zobaczysz interfejs Meld, w którym możesz wybrać porównanie plików lub katalogów, a także widok kontroli wersji. Kliknij porównanie katalogów i przejdź do następnego interfejsu.

Wybierz katalogi, które chcesz porównać. Pamiętaj, że możesz dodać trzeci katalog zaznaczając opcję „Porównanie trójstronne”.

Po wybraniu katalogów kliknij „Porównaj”.

W tym artykule opisaliśmy, jak znaleźć różnicę między dwoma katalogami w systemie Linux. Jeśli znasz inny sposób wiersza poleceń lub gui, nie zapomnij podzielić się swoimi przemyśleniami na temat tego artykułu w sekcji komentarzy poniżej.