andregyn
(usa Debian)
Enviado em 26/02/2016 - 18:21h
Boa noite amigo,
Tenho o script que faz exatamente o que você precisa.
Basta trocar alguns comandos.
Segue o script original que está no link:
https://www.vivaolinux.com.br/script/Comparar-2-arquivos-e-mostrar-os-itens-diferentes/
#!/bin/bash
arq1=$1
arq2=$2
for x in `cat $arq1`
do
diff=`cat $arq2 | grep -w "$x"`
if [ "$diff" = "" ]
then
echo "$x"
fi
done
Para o seu caso basta fazer algo como:
#!/bin/bash
arq1="/diretorio/1"
arq2="/diretorio/2"
for x in `ls $arq1`
do
diff=`ls $arq2 | grep -w "$x"` #verificando se os nomes sao iguais
if [ "$diff" != "" ]
then
#tirando md5 se os nomes forem iguais
dir1=`md5sum $x |awk {'print $1'}`
dir2=`md5sum /diretorio/2/$x |awk {'print $1'}`
if [ "$dir1" != "$dir2" ]
then
echo "Arquivo md5 direferente no arquivo $x"
fi
#echo "$x" # aqui printaria os nomes diferentes
fi
done
Cara fiz rapidinho, mas acho que funciona, talvez precise de algumas alterações, mas acho que já da para tirar um base.
Qualquer dúvida é só perguntar.