2013-03-13 1 views
0

Я столкнулся с проблемой при выполнении такой последовательности действий:.__ MaxOS папку при unziping (в контексте XCode проекта)

  • Загрузка Xcode проект с некоторой учебники веб-сайта (.zip файл)
  • Извлечение project (unzip ProjectName.zip)
  • Открытие извлеченного проекта в XCode и изменение чего-либо в коде. После некоторых изменений проекта сообщает некоторые ошибки во время выполнения - не имеет значения, какой ...
  • Закрытие XCode, удаление проекта (гт -rf Projectname)
  • Разархивирование это еще раз
  • Проблема: ошибки во время выполнения по-прежнему существует, несмотря на старый проект факт был удален

Через пару часов я обнаружил, что при распаковке от терминала уровня, MacOS создает некоторый скрытый каталог с именем .__ MacOSX или так (http://www.mactricksandtips.com/2008/08/unzipping-files-using-terminal.html) Удаление проекта из этой скрытой директории (Projectname каталог) был полезен.

Вопрос: Вы когда-нибудь сталкивались с этой проблемой, и знаете ли вы, какие данные хранятся в этом скрытом каталоге (особенно в контексте проекта XCode)? Имеют ли файлы из этого скрытого каталога влияние процесса распаковки (с помощью команды unzip)?

+0

Так почему же 'rm -rf' не удаляет папки' __MacOSX'? – trojanfoe

ответ

1

В папке с папкой __MACOSX AppleDouble files. Когда вы создаете ZIP-архив в Finder, он использует их для хранения всех метаданных файла, которые формат zip-архива не обрабатывает. Если вы расширите .zip с помощью Finder (фактически, он использует утилиту архива), он повторно привязывает метаданные к файлам, а не расширяет папку __MACOSX в виде отдельных файлов. Если вы используете инструмент распаковки командной строки, он не знает, что делать с файлами AppleDouble, и, таким образом, расширяет их как отдельные файлы.

Можно восстановить файлы AppleDouble (например, с помощью утилиты FixupResourceForks), но обычно лучше всего использовать Finder для расширения архивов Mac .zip и позволить ему правильно собрать все.

Смежные вопросы