# Gerar o hash do primeiro arquivo
hash1=$(sha256sum arquivo1.txt)
# Gerar o hash do segundo arquivo
hash2=$(sha256sum arquivo2.txt)
# Comparar os hashes
if [ "$hash1" == "$hash2" ]
then
echo "Os arquivos são iguais."
else
echo "Os arquivos são diferentes."
fi
Neste caso, fi é essencialmente o fechamento do bloco if. É equivalente ao } em muitas outras linguagens de programação. Sem o fi, o shell não saberia onde o bloco if termina, e você receberia um erro de sintaxe. Portanto, sempre que você abrir um bloco if em um script de shell, você deve fechá-lo com fi.
Neste exemplo, substitua arquivo1.txt e arquivo2.txt pelos nomes dos arquivos que você deseja comparar. Este script gera o hash SHA-256 para cada arquivo e, em seguida, compara os hashes. Se os hashes forem iguais, ele imprimirá “Os arquivos são iguais”. Caso contrário, ele imprimirá “Os arquivos são diferentes”.
Lembre-se de que este é apenas um exemplo e você pode precisar ajustá-lo para se adequar às suas necessidades específicas. Por exemplo, se você estiver usando hashes MD5 em vez de SHA-256, você substituiria sha256sum por md5sum no script acima. Além disso, este script pressupõe que você está executando-o em um shell que suporta a sintaxe mostrada (como o Bash, que é o shell padrão na maioria das distribuições Linux). Se você estiver usando um shell diferente, pode precisar ajustar a sintaxe.
Outras opções:
- É possível utilizar ferramentas gráficas para comparar hashes, como o GtkHash.
- Você pode usar scripts para automatizar a comparação de hashes em vários arquivos.
Exemplo prático:
Suponha que você baixou um arquivo ISO de um sistema operacional e deseja verificar se ele está corrompido. Você pode baixar o hash MD5 original do site do sistema operacional e compará-lo com o hash do arquivo que você baixou.
# Baixe o hash MD5 original
wget https://www.ubuntu.com/server/releases/focal/MD5SUMS
# Calcule o hash MD5 do arquivo baixado
md5sum ubuntu-20.04.5-live-server-amd64.iso
# Compare os hashes
diff MD5SUMS ubuntu-20.04.5-live-server-amd64.iso
Se os hashes forem iguais, o arquivo ISO não está corrompido. Se os hashes forem diferentes, o arquivo ISO está corrompido e você deve baixá-lo novamente.
Nenhum comentário:
Postar um comentário