Cum să găsiți diferența între două directoare folosind instrumentele Diff și Meld


Într-un articol anterior, am analizat 9 cele mai bune instrumente de comparare și diferență de fișiere (Diff) pentru Linux și în acest articol, vom descrie cum să găsim diferența dintre două directoare în Linux.

În mod normal, pentru a compara două fișiere în Linux, folosim dif – un instrument de linie de comandă Unix simplu și original care vă arată diferența dintre două fișiere de pe computer; compară fișierele linie cu linie și este ușor de utilizat, vine cu preinstalat pe majoritatea, dacă nu pe toate distribuțiile Linux.

Întrebarea este cum obținem diferența dintre două directoare în Linux? Aici, dorim să știm ce fișiere/subdirectoare sunt comune în cele două directoare, cele care sunt prezente într-un director, dar nu în celălalt.

Sintaxa convențională pentru rularea diff este următoarea:

diff [OPTION]… FILES
diff options dir1 dir2 

În mod implicit, ieșirea sa este ordonată alfabetic după numele fișierului/subdirectorului, așa cum se arată în captura de ecran de mai jos. În această comandă, comutatorul -q îi spune lui diff să raporteze numai atunci când fișierele diferă.

diff -q directory-1/ directory-2/

Din nou, diff nu intră în subdirectoare, dar putem folosi comutatorul -r pentru a citi și subdirectoarele astfel.

diff -qr directory-1/ directory-2/ 

Folosind Meld Visual Diff și Merge Tool

Există o opțiune grafică grozavă numită meld (un instrument vizual de diferență și îmbinare pentru desktopul GNOME) pentru cei cărora le place să folosească mouse-ul, îl puteți instala după cum urmează.


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]  

După ce l-ați instalat, căutați „meld ” în Ubuntu Dash sau Meniul Linux Mint, în Prezentare generală a activităților pe desktopul Fedora sau CentOS și lansați-l.

Veți vedea interfața Meld mai jos, unde puteți alege compararea fișierelor sau a directorului, precum și o vizualizare de control al versiunilor. Faceți clic pe comparare director și treceți la următoarea interfață.

Selectați directoarele pe care doriți să le comparați, rețineți că puteți adăuga un al treilea director bifând opțiunea „Comparație în trei direcții”.

După ce ați selectat directoarele, faceți clic pe „Comparați”.

În acest articol, am descris cum să găsiți diferența dintre două directoare în Linux. Dacă cunoașteți orice altă linie de comandă sau altă modalitate de interfață, nu uitați să vă împărtășiți gândurile la acest articol prin secțiunea de comentarii de mai jos.