Когда я сжимаю папку или файл, щелкнув правой кнопкой мыши меню Mac OS X, заархивированный файл содержит папки .DS_Store и __MACOSX . Поскольку я делюсь архивным файлом онлайн для загрузки, пользователи Windows по ошибке пытаются найти файл в папке __MACOSX .
Мне нужно иметь более чистый вариант архива. Я не хочу включать папки .DS_Store и __MACOSX , а только файл или папку в файл архива.
Я нашел только CleanArchiver, но это приложение с графическим интерфейсом. Это действительно требует времени, и у меня много файлов для сжатия. Я ищу решение по контекстному меню, если это возможно.
Есть ли какое-либо решение, которое вы можете порекомендовать для чистого сжатия?
zip
для создания zip-файла, "__MACOSX /" не будет создан в первую очередь, так что все, что вам действительно нужно, этоzip -r dir.zip .
. Однако, если «__MACOSX /» каким-то образом пробрался туда, ваше решение избавится от него.zipinfo dir.zip
Просто дополнительная информация ...
Насколько я понимаю, __MACOSX - это подкаталог, искусственно созданный инструментами графического интерфейса Mac для хранения метаданных, таких как расширенные атрибуты, которые обычно нельзя сохранить в zip-файле.
Если вы используете инструменты Mac GUI для распаковки zip-файла, инструменты будут знать, что делать с __MACOSX, и каталог фактически не будет распакован.
Проблемы возникают, когда вы отправляете файл .zip пользователям Windows или Linux или просто используете универсальную
unzip
программу для их распаковки. Эти инструменты не будут знать, что __MACOSX особенный, и просто распакуют его.Самый простой вариант - использовать
zip
упакованный zip-файл вместо встроенного инструмента Mac.zip
не создаст __MACOSX, и ваша проблема решена. (В процессе вы потеряете метаданные, но, вероятно, вам все равно это не нужно.)Если уже слишком поздно, и у вас уже есть zip-файл с __MACOSX, вы все равно можете удалить его с помощью:
Наконец, принятый ответ является наилучшим, потому что, если по какой-то причине __MACOSX действительно существует в вашем каталоге (например, потому что вы ранее использовали его
unzip
для создания), опция -x будет препятствовать его упаковке.источник
Попробуй Кека . Он поставляется с возможностью исключить .DS_Store
источник
BetterZip [$ 20] - это один из тех, что я когда-либо использовал.
Это приложение с графическим интерфейсом, но имеет поддержку Applescript & Services, с помощью которой вы можете запускать пресеты с настройками по умолчанию, в том числе исключая специфичные для Mac файлы, такие как .DS_Store & __MACOSX. Возможно стоит посмотреть.
Из справки BetterZip ...
Один из моих пресетов сохранения ...
источник