未完了のBitTorrentダウンロードに属するファイルとディレクトリを識別するのに役立つプログラムはありますか?めちゃくちゃでしたが、どのダウンロードが完了し、どのダウンロードが完了していないのかわかりません。急流ファイルがまだ残っている場合は、明らかに急流クライアントを使用できますが、そうではありません。だから識別する方法を探しています。可能未完了の急流のダウンロード - 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
または同様のものを使用してに一致させることができます000...
。
hexdump -ve '/1 "%02X"'
しかし、これは非常に遅いでしょう。
最後に、非常に短いCプログラムでも同じことができます。