Проверка файлов в папке на целостность?

Ссылка скопирована
1 ответ

Если я скопировал папку с 2500 мелкими файлами на флешку а затем удалил папку от куда копировал то как проверить файлы на целостность ?
Чтоб просканировав папку программой программа выдала какой файл битый а какой читается корректно.

Дополнительно:

а затем удалил папку от куда копировал

А не кажется ли тебе, что сей шанс упущен?

  • а у тебя точно не нарушено понимание причинно-следственных связей?
  • Ответы:

    никак.
    чек суммы снимаются перед копированием.
    а не после, еще и с удалением оригинала.

    В общем случае - никак.
    Если мы говорим о шлешке, то на ней скорее всего будут FAT32 или NTFS. Но они не хранят чек-суммы для своего содержимого. Тут надо обходиться своими силами - хранить отдельный файл с чек-суммами. Но, думаю, их нет.
    Все что можно проверить - это целостность самой файловой системы, но даже если фс в порядке, то не факт, что содержимое файлов нормальное с точки зрения приложения/пользователя

    Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Дмитрий К. Ответ

    Для проверки целостности файлов в папке можно воспользоваться различными способами. Один из способов - это использование хэш-сумм. Хэш-сумма - это уникальное значение, которое генерируется на основе содержимого файла. Если содержимое файла изменится, то хэш-сумма также изменится.

    Вот пример скрипта на PHP, который проверяет целостность файлов в папке с использованием хэш-сумм MD5:

    $dir = 'путь_к_папке';
    $files = scandir($dir);
     
    foreach ($files as $file) {
        if (is_file($dir . '/' . $file)) {
            $hash = md5_file($dir . '/' . $file);
            echo "Файл: $file, MD5 хэш: $hash <br>";
        }
    }

    $dir = 'путь_к_папке'; $files = scandir($dir); foreach ($files as $file) { if (is_file($dir . '/' . $file)) { $hash = md5_file($dir . '/' . $file); echo "Файл: $file, MD5 хэш: $hash <br>"; } }

    Этот скрипт пройдет по всем файлам в указанной папке, вычислит их хэш-суммы с помощью функции md5_file и выведет результат на экран.

    Если вы хотите сравнить хэш-суммы файлов с заранее сохраненными значениями, вы можете сохранить их в массиве и сравнивать значения в цикле.

    Также можно использовать другие алгоритмы хэширования, такие как SHA1 или SHA256, в зависимости от ваших потребностей.

    Надеюсь, этот ответ поможет вам проверить целостность файлов в папке. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно