Как получается, что при извлечении zip, я получаю два файла с одинаковым именем в одном пути?

я извлекаю zip (самораспаковывающийся, но это, вероятно, не имеет значения), и для нескольких файлов я получаю диалоговое окно, спрашивающее меня, хочу ли я заменить файл, который уже был извлечен, файлом, который вот-вот будет извлечен. На первый взгляд я не понимал, как zip может содержать один и тот же файл в одном и том же месте более одного раза. Затем я просмотрел файл с помощью 7zip (или любого другого инструмента) и нашел это:

enter image description here

разница в номере блока. Что здесь на самом деле происходит?

24
задан 3498DB
30.03.2023 2:44 Количество просмотров материала 2824
Распечатать страницу

5 ответов

да, формат zip файл, несколько файлов с тем же именем. Файлы в zip на самом деле не находятся в каталогах, а просто имеют длинное имя, которое включает путь. И файлы добавляются в ZIP, эффективно объединяя их конец в конец. Единственное место, где синонимы вызывают проблему в формате ZIP, - это каталог, где предположительно более поздний файл заменяет более ранний. Но когда извлекается весь ZIP-файл (против извлечения отдельных файлов), общий подход игнорировать каталог и просто извлекать файлы в том порядке, в котором они появляются в ZIP.

показанное изображение, конечно, содержимого ZIP-файла, а не каталога Windows.

8
отвечен Daniel R Hicks 2023-03-31 10:32

да. .zip-файлы могут содержать один и тот же файл дважды. Это может быть выполнено с помощью функции "добавить в архив" вашего инструмента zip. По умолчанию файл перезаписывает прежний файл(ы) при извлечении, как это обычно желаемого поведения.

кроме того, файлы, отличающиеся только регистром имени файла/пути, считаются идентичными при извлечении в файловую систему без учета регистра (Windows или Mac OS.)

4
отвечен Chris Nava 2023-03-31 12:49

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

возможно, ваш архив был создан в файловой системе, чувствительной к регистру (например, в большинстве Linux), и два файла имели разные случаи (например: записи, записи, записи).

Если вы посмотрите на выходные данные, файлы имеют одинаковый размер, ту же дату, тот же CRC, поэтому эти файлы идентичны, вы можете безопасно перезаписать один с другим. Это может быть, что некоторые копировали его с другим случаем в качестве локальной временной резервной копии во время работы с этими файлами. Номер блока состоит в том, что они хранятся в разных местах в zip-файле, что должно быть очевидно.

1
отвечен Itai 2023-03-31 15:06

тот же файл, то же расширение (или, в данном случае, без расширения). Как уже было сказано выше, это может быть вызвано вручную добавлять несколько файлов в zip-файл, потому что внутренняя структура zip-файл не папку. Это также может быть вызвано, когда файл zip создается в системе, чувствительной к регистру, такой как Linux, и открывается в файловой системе, нечувствительной к регистру, такой как Windows.

обратите внимание, что в Windows, если перетащить и падение для извлечения файлов столкновение, подобное этому, на самом деле будет блокировать графический интерфейс. Вам не нужно прибегать к убийству задачи и перезапуску; это известная ошибка в 7-Zip, и вы можете использовать клавиатуру для навигации по параметрам (например, заменить все), даже если мышь заблокирована -> http://sourceforge.net/p/sevenzip/bugs/1509/

0
отвечен DavidMWilliams 2023-03-31 17:23

вы не можете иметь два одинаковых имени файлов в одном пути. Вы проверили, скрывает ли ваша система расширения? Это может быть возможным различием между ними. Может быть, один из них является резервным файлом.

-1
отвечен ngen 2023-03-31 19:40

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх