Pesquisa de site

Como encontrar a diferença entre dois diretórios usando ferramentas Diff e Meld


Em um artigo anterior, revisamos as 9 melhores ferramentas de comparação e diferença de arquivos (Diff) para Linux e, neste artigo, descreveremos como encontrar a diferença entre dois diretórios no Linux.

Normalmente, para comparar dois arquivos no Linux, usamos o diff – uma ferramenta de linha de comando simples e original do Unix que mostra a diferença entre dois arquivos de computador; compara arquivos linha por linha e é fácil de usar, vem pré-instalado na maioria, senão em todas as distribuições Linux.

A questão é como conseguimos a diferença entre dois diretórios no Linux? Aqui, queremos saber quais arquivos/subdiretórios são comuns nos dois diretórios, aqueles que estão presentes em um diretório, mas não no outro.

A sintaxe convencional para executar o diff é a seguinte:

diff [OPTION]… FILES
diff options dir1 dir2 

Por padrão, sua saída é ordenada em ordem alfabética por nome de arquivo/subdiretório, conforme mostrado na imagem abaixo. Neste comando, a opção -q diz ao diff para reportar apenas quando os arquivos forem diferentes.

diff -q directory-1/ directory-2/

Novamente, o diff não vai para os subdiretórios, mas podemos usar a opção -r para ler os subdiretórios também assim.

diff -qr directory-1/ directory-2/ 

Usando a ferramenta Meld Visual Diff e Merge

Existe uma opção gráfica legal chamada meld (uma ferramenta visual de diff e mesclagem para a área de trabalho GNOME) para quem gosta de usar o mouse, você pode instalá-la da seguinte maneira.


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]  

Depois de instalá-lo, procure por “meld ” no Ubuntu Dash ou no menu Linux Mint, em Visão Geral de Atividades > no desktop Fedora ou CentOS e inicie-o.

Você verá a interface do Meld abaixo, onde você pode escolher a comparação de arquivos ou diretórios, bem como uma visualização de controle de versão. Clique na comparação de diretórios e vá para a próxima interface.

Selecione os diretórios que deseja comparar, observe que você pode adicionar um terceiro diretório marcando a opção “Comparação de 3 vias”.

Depois de selecionar os diretórios, clique em “Comparar”.

Neste artigo, descrevemos como encontrar a diferença entre dois diretórios no Linux. Se você conhece alguma outra linha de comando ou interface gráfica, não se esqueça de compartilhar suas idéias sobre este artigo por meio da seção de comentários abaixo.