나는 대본을 쓰고 있어요. 아이디어는 로컬 파일과 원격 파일 간의 MD5 체크섬을 비교하는 것입니다.
로컬 파일 체크섬은 로컬 변수에 저장됩니다.
LOCALMD5=!chsum "$(basename "$file")"
원격 파일의 md5 체크섬을 얻으려면 이 스크립트를 권장합니다. 하다:
ssh user@remote-dns-name
cd path/to/file
csum -h MD5 >MD5-hashsum-filename
SSH 환경에서 성공적으로 실행할 수 있다고 가정하면 csum
해당 명령의 출력을 나중에 사용할 수 있는 로컬 변수로 다시 설정하려면 어떻게 해야 합니까?
답변1
csum
STDOUT 을 통해 캡처할 수 있어야 합니다 ssh
.
csum
해시 및 파일 이름을 포함한 전체 출력을 얻으려면 다음을 수행하십시오 .
bash-$ remoteMD5=$(ssh user@remote-dns-name "csum -h MD5 /full/path/to/file")
bash-$ echo $remoteMD5
723fc34e606a4d0002fe86f417be5f56 /full/path/to/file
아니면 그냥 해시를 반환할 수도 있습니다.
bash-$ remoteMD5=$(ssh user@remote-dns-name "csum -h MD5 /full/path/to/file" | awk '{print \$1}'")
bash-$ echo $remoteMD5
723fc34e606a4d0002fe86f417be5f56