md5 체크섬을 비교하는 더 간단한 방법?

md5 체크섬이있는 파일을 다운로드 한 후 현재 확인합니다.

md5 *file* | grep *given_checksum* 

eg

md5 file.zip | grep -i B4460802B5853B7BB257FBF071EE4AE2 

하지만 분명히 매우 일반적인 작업 인 grep과 파이프를 요구하는 것이 재미있어 보였습니다. 효율적으로 일을 처리하는 데 더 나은 방법이 있는지 궁금했습니다.

댓글

  • ? 어떤 패키지에서 왔습니까?

  • ' 실제로이 질문을하고 답변을 조사하기 전까지는 전혀 다른 점을 몰랐지만 ' m OS X에서 bash를 사용하고 ' Apple ' 자체 도구를 사용합니다. div id = “790aaf30f4″>

-c 옵션이 없습니다. 분명히 그들은 10.5에서 md5sum 번들링을 중단했습니다 … 저는 ' 이제 원래 unix md5sum 도구를 설치했습니다.

Answer

md5sum에는 기존 합계 집합을 확인하는 -c 옵션이 있으며 종료 상태는 성공 / 실패를 나타냅니다.

예 :

$ echo "ff9f75d4e7bda792fca1f30fc03a5303 package.deb" | md5sum -c - package.deb: OK 

멋진 리소스 찾기 여기

댓글

  • 감사합니다. 완료를 위해 이제는 grep을 포함하는 것보다 깔끔해 보이는 md5sum -c - <<<"b4460802b5853b7bb257fbf071ee4ae2 file_name.ext"를 사용합니다!
  • 흠, 원래 $ md5 파일 | grep given_checksum 및 대소 문자를 구분하지 않는 문자열을 사용하려면 grep -i
  • no properly formatted MD5 checksum lines found를 사용해야합니다. md5sum -c <file.md5> <file>를 사용하고 있었지만이 명령은 저에게 효과적이었습니다.

Answer

일반적인 bash 방법은 다음과 같습니다.

shopt -s nocasematch if [[ $(md5sum "$file") = 5d40f31729c992b5a0e67490689fe8ff* ]] 

Answer

md5sum -c <filename>.zip.md5 <filename>.zip 

동일한 경우 Ok를 알려줍니다.

이것은 tar에서도 작동합니다.

답변

psusi의 답변에서 영감을 얻음

echo "$(cut -f1 -d" " your_file.jar.md5) your_file.jar" | md5sum -c - 

모든 md5가 동일한 방식으로 저장되지 않았으므로 cut를 사용했습니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다