У меня есть несколько папок, которые содержат файлы (старые временные P2P-файлы, очевидно, неправильно сохраненные), которые просто заполнены нулями - любая программа / пакет, который может это проверить? Я не хочу, чтобы открыть каждый с помощью шестнадцатеричного редактора

1 ответ1

1

Несмотря на риск ложных срабатываний (как и большинство решений на основе CRC), если установлены PowerShell и среда выполнения Java, можно выполнить примерно то, что вы просите, после загрузки и извлечения Jacksum.

Адаптируйте следующую команду (переменная $jacksum_root_directory должна содержать косую черту), затем откройте PowerShell и запустите ее, чтобы получить список файлов с контрольной суммой нуля:

$jacksum_root_directory = 'drive:\path\to\directory'
$jacksum_jar_location = 'drive:\path\to\jacksum.jar'
java -jar $jacksum_jar_location -E dec -F "#CHECKSUM #FILENAME" -a crc64 -p -r -f $jacksum_root_directory | where { $_.StartsWith('0 ') } | foreach { get-item $_.Remove(0, 2) }

Все обнуленные и пустые файлы будут иметь контрольную сумму, равную нулю, и должны отображаться в списке, но возможно, что другие, не обнуленные файлы также могут иметь нулевую контрольную сумму.

Если вы уверены, что перечисленные файлы можно безопасно удалить, их можно удалить автоматически, заменив get-item на remove-item в третьей строке и повторно выполнив команду.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .