Tenho um arquivo local file1
e também a soma de verificação sha256 do arquivo original.
O controle remoto é uma rhel8 server
ferramenta local sha256sum
dentro de um git bash
laptop com Windows 10.
Pelo amor de Deus, parece que não consigo comparar esses dois de uma maneira razoável.
no controle remoto eu pego
~> sha256sum file1
55dcd0a7046a24e5ee296d1481d6f787b1956d138bbfb6e44ca8591006367f27 file1
então minha pergunta é... como comparar essa soma criada localmente com a soma de verificação que obtive remotamente?
Eu presumo que deve haver uma maneira de fazer isso com o sha256sum
próprio comando que, de alguma forma, emite checksum matches
ouchecksum differs
ou é realmente necessário confiar na sua visão para comparar esses dois ou criar arquivos de texto extras contendo cada soma de verificação e executar uma comparação entre eles?
a melhor maneira que posso pensar é
echo [sha of the remote file] ; sha256sum file1
55dcd0a7046a24e5ee296d1481d6f787b1956d138bbfb6e44ca8591006367f27
55dcd0a7046a24e5ee296d1481d6f787b1956d138bbfb6e44ca8591006367f27 *file1
... e então comparar essas duas linhas usando minha visão nua.
não há nada melhor?
o manual diz
-c, --check
read SHA256 sums from the FILEs and check them
mas o que isso significa na prática?
sha256sum file1 --check [sha of the remote file]
Pareceria lógico para mim, mas não funciona.
Nem faz
:~> sha256sum file1 --check
sha256sum: file1: no properly formatted SHA256 checksum lines found
Você precisa colocar a linha de soma de verificação em um arquivo e usá-la:
55dcd0a7046a24e5ee296d1481d6f787b1956d138bbfb6e44ca8591006367f27 file1
em um arquivo, digamos checksum.txt, próximo ao arquivo1.sha256sum -c checksum.txt
.alternativamente, sha256sum também pode ler arquivos de soma de verificação da entrada padrão:
Após o comentário de Z0OM, encontrei uma solução viável na universidade do youtube. E a resposta é
grep
:Se isso for bem-sucedido, a saída do seu comando SHA local corresponderá ao hash remoto.