Eu quero construir um enorme blob de dados (uma espécie de backup) e enviá-lo pela rede (ssh ou rsync) para outro host. Há espaço suficiente no controle remoto para os dados, mas não no host local, portanto não posso armazená-los como um arquivo local. Eu gostaria de calcular uma soma de verificação dos dados conforme eles entram no canal (e depois comparar com a soma de verificação do arquivo remoto resultante). Então, estou procurando um programa que possa colocar no meio de um pipeline e permitir que ele calcule uma soma de verificação de tudo que está passando.
Dois programas "MITM" que aparecem na minha cabeça são pv
e, mbuffer
mas nenhum parece ter essa funcionalidade. Além disso cat
, fica dd
aquém :-) Os vários programas para calcular somas de verificação, como md5sum
, sha1sum
etc., consomem suas entradas e não as transmitem. Ajuda? Obrigado!
Você pode usar
tee
e processar a substituição>(…)
, por exemploEste pipe está gravando as somas de verificação no stderr para não interferir no stdout. Você pode redirecionar o hash para um arquivo se quiser mantê-lo.