완료되지 않은 토렌트 다운로드에서 파일을 식별하는 프로그램?

완료되지 않은 토렌트 다운로드에서 파일을 식별하는 프로그램?

완료되지 않은 bittorrent 다운로드에 속하는 파일 및 디렉터리를 식별하는 데 도움이 되는 프로그램이 있습니까? 난장판을 만들었고 어떤 다운로드가 완료되었는지, 어떤 다운로드가 완료되지 않았는지 확신할 수 없습니다. 토렌트 파일이 아직 남아 있다면 분명히 bt 클라이언트를 사용할 수 있지만 그렇지 않습니다. 그래서 식별할 방법을 찾고 있어요~할 것 같은완료되지 않은 bt 다운로드 - 100% 정확할 필요는 없습니다.

나는 bt 클라이언트가 일반적으로 빈 파일을 생성할 뿐만 아니라 "구멍"(NULL 문자만 있는 파일 블록)이 있는 파일을 남겨두기 때문에 이것이 아마도 후보를 찾는 좋은 방법이 될 수 있다는 것을 알았습니다. 안타깝게도 저는 NULL 블록이 있는 파일을 찾는 데 적합한 Linux 명령을 모릅니다...

답변1

귀하의 grep이 이를 지원한다면; grep으로 확인할 수 있습니다.

grep -P '\x00{NNN}' File

여기서 NNN은 일치시키려는 연속 0바이트 수입니다. 일반적으로 최대 USHRT_MAX 또는 65535입니다.

-P사용하는데 필요하다\x00

오프셋을 나열하려면 다음을 사용하십시오.

grep -Pboa '\x00{NNN}' File

그래서 다음과 같은 방향으로 나아가고 있습니다.

for f in *; do
    [ -e "$f" ] || break
    if grep -Pq '\x00{1000}' "$f"; then 
        mv "$f" ../likely_corrupt
    fi
done

hexdump그렇지 않으면 , xxd또는 like 및 match 를 사용할 수 있습니다 000....

hexdump -ve '/1 "%02X"'

하지만 그건 엄청나게 느릴 겁니다.


마지막으로 매우 짧은 C 프로그램도 동일한 작업을 수행할 수 있습니다.

관련 정보