Subtrai os arquivos uns dos outros recursivamente entre dois diretórios semelhantes

1

Estou tentando criar uma maneira de pegar dois diretórios (quase idênticos) e mostrar a diferença entre todos os arquivos nos dois diretórios.

Procurando por duas coisas diferentes:

1- Liste todos os arquivos (recursivamente) que são diferentes entre os dois diretórios

2- Subtraia todos os arquivos em / new-directory / from / diretório-antigo / e envie os resultados para um terceiro diretório ou em algum lugar onde possa facilmente verificar as diferenças.

Estou procurando backdoors em um servidor comparando um diretório de backup (limpo) com um backdoor suspeito (dentro de um arquivo previamente existente).

    
por Orun 04.03.2013 / 19:44

1 resposta

1

Se seu objetivo é comparar os arquivos, você pode usar diff diretamente, por exemplo, dessa forma:

diff -r old-dir new-dir

Com uma opção -q você pode suprimir as diferenças e obter apenas uma lista quais arquivos diferem, ou se alguns arquivos existem somente em um desses diretórios.

$ diff -r old-dir new-dir
Only in old-dir: 2
diff -r old-dir/3 new-dir/3
0a1
> this line was inserted by an evil hacker... 

$ diff -rq old-dir new-dir
Only in old-dir: 2
Files old-dir/3 and new-dir/3 differ

Existe também uma interface gráfica, chamada xxdiff , que facilita a exibição das diferenças; Captura de tela da página inicial:

    
por 04.03.2013 / 20:17