Как получить доступ к данным из резервной копии контактов Mac: файл .abbu

После того, как я сделал резервную копию контактов Mac в файле .abbu, есть ли программа, которая позволяет мне получить базовые данные, а не просто импортировать их? Т.е. могу ли я открыть их как текстовый файл или .CSV. Спасибо!

Замечательный вопрос! У меня такая же проблема, и возможности экспорта адресной книги... хромые...

Ответы (6)

У меня была резервная копия контактов в abbuфайле, экспортированном из Yosemite Contacts. Когда я попытался импортировать их в Контакты El Capitan, я столкнулся с той же проблемой, что и fish923.

Это отстой, потому что abbuфайл был моей единственной резервной копией.

Я просмотрел его, и abbuфайл (фактически папка) оказался в основном копией внутренних данных, используемых Контактами. Не имея возможности импортировать его, невозможно экспортировать его в более разумный формат, например, в набор визитных карточек.

Старайтесь никогда не попадать в такую ​​ситуацию. Если уже слишком поздно, вот что вы можете сделать:

  1. Загрузите клиент SQLite, такой как Base, MesaSQLite, SQLite Manager и т. д. (В качестве альтернативы вы можете попробовать командную строку: https://stackoverflow.com/questions/5776660/export-from-sqlite-to-csv-using-shell-script )
  2. Щелкните правой кнопкой мыши abbuфайл и выберите «Показать содержимое пакета». Перейдите в папку «Источники». Одна из этих подпапок UUID соответствует одной из ваших учетных записей CardDAV. Выбери один.
  3. Откройте AddressBook-v22.abcddbфайл в клиенте SQLite.
  4. Введите следующий SQL-запрос. Обратите внимание, что это просто что-то быстрое и грязное, что я придумал в раздраженном состоянии, и не сохраняет все, поэтому не стесняйтесь изменять его, изучая отдельные таблицы, чтобы увидеть, есть ли какие-либо данные, которые вы хотите, которые он пропускает:

SELECT ZABCDRECORD.Z_PK, ZABCDRECORD.ZBIRTHDAYYEAR, ZABCDRECORD.ZFIRSTNAME, ZABCDRECORD.ZMIDDLENAME, ZABCDRECORD.ZLASTNAME, ZABCDRECORD.ZORGANIZATION, ZABCDRECORD.ZJOBTITLE, ZABCDPHONENUMBER.ZFULLNUMBER, ZABCDPHONENUMBER.ZLABEL, ZABCDPOSTALADDRESS.ZCITY, ZABCDPOSTALADDRESS.ZCOUNTRYNAME, ZABCDPOSTALADDRESS.ZLABEL, ZABCDPOSTALADDRESS.ZSTATE, ZABCDPOSTALADDRESS.ZSTATE, ZABCDPOSTALADDRESS.ZZIPCODE, ZABCDEMAILADDRESS.ZADDRESS FROM ZABCDRECORD LEFT JOIN ZABCDPOSTALADDRESS ON ZABCDPOSTALADDRESS.ZOWNER = ZABCDRECORD.Z_PK LEFT JOIN ZABCDEMAILADDRESS ON ZABCDEMAILADDRESS.ZOWNER = ZABCDRECORD.Z_PK LEFT JOIN ZABCDPHONENUMBER ON ZABCDPHONENUMBER.ZOWNER = ZABCDRECORD.Z_PK;

Вот, большая часть ваших контактных данных. Экспортируйте это в CSV или что-то еще, и получайте удовольствие, вводя его вручную в Контакты. Или, я думаю, вы могли бы написать скрипт для обработки CSV в vCards, если Контакты не захлебываются ими.

Это не ответ на исходный вопрос. Пожалуйста, сформулируйте четкий вопрос о том, что вы хотите сделать или какая у вас проблема.
Я с уважением не согласен с @dan; это говорит вам, как получить доступ к данным из файла .abbu, и это позволило мне сделать именно это. Метод вставки в Numbers постоянно приводил к сбою Numbers с более чем 3000 контактов. Мой главный комментарий к SQL-запросу заключается в том, что ZABCDPOSTALADDRESS.ZSTATEон повторяется дважды. Первый должен заканчиваться на .ZSTREET. Я предполагаю, что было бы полезно включить ZABCDEMAILADDRESS.ZLABELbefore ZABCDEMAILADDRESS.ZADDRESS, но я не проверял это. Для доступа к данным я использовал бесплатную утилиту «DB Browser for SQLite». Это было спасением для меня.

В Контактах версии 8.0 (1371), работающей на OS X 10.9.4, вы можете экспортировать файл с несколькими карточками в формате .vcf следующим образом:

  1. Запустите приложение Контакты.
  2. Убедитесь, что отображаются все ваши контакты, нажав «Все контакты» на панели «Группы». (Если вы не видите панель «Группы», которая начинается с «Все контакты», в левой части окна выберите «Вид» > «Показать группы» в меню.)
  3. Щелкните первый контакт в списке контактов.
  4. Выберите «Правка» > «Выбрать все» в меню. Убедитесь, что в области сведений о карте справа указано, сколько карт было выбрано (например, «Выбрано 612 карт»).
  5. Выберите «Файл» > «Экспорт» > «Экспорт vCard…».
  6. Введите желаемое имя файла экспорта и местоположение, а затем нажмите Сохранить.

Теперь у вас будет один файл .vcf со всеми вашими контактами. Это текстовый файл, который вы можете открыть с помощью TextEdit. Вы также можете найти инструменты, которые конвертируют .vcf в другие форматы, такие как .csv, если вам это нужно.

Этот файл .vcf можно использовать для восстановления ваших контактов или их переноса на другие устройства.

Если у вас установлен iWorks/Numbers, ознакомьтесь с руководством:

Как преобразовать файл адресной книги ABBU в CSV

ABBU — это собственный тип файлов для адресной книги Mac OS X, что означает, что вы можете открывать файлы ABBU только с помощью приложения Mac Address Book. Тем не менее, вы можете использовать приложение iWork Numbers для импорта файла ABBU, а затем экспортировать файл данных в формат файла значений, разделенных запятыми, или CSV, который является универсальным форматом текстового файла, который вы можете импортировать в любую адресную книгу или базу данных. приложения независимо от операционной системы.

Также вы можете попробовать инструмент:

AB2CSV

Эта утилита Mac OS X, также известная как Address Book to CSV Exporter, позволяет пользователю экспортировать свою собственную адресную книгу в файл CSV или VCF.

Вы упомянули «просто импортировать их» , но если вы можете использовать первый метод для их экспорта в Numbers, вы можете сохранить их как .CSV.

Ответы на Ask Different должны быть чем-то большим, чем просто ссылка. Можно включить ссылку, но, пожалуйста, подведите итог или выделите ее в ответе. Идея состоит в том, чтобы сделать ответ самостоятельным.
@patrix, я думаю, девиз сети We collect solutions, not links;) . . . . . . . . BsdHelper, проверьте руководство Как ответить ; Когда я начал работать со стеком, я многому научился, читая (и проверяя уценку) самые популярные вопросы и ответы на моем предпочтительном сайте (WPSE).
@patrix и brasofilo Подойдут, ребята. Извиняюсь за мою лень.
С Mavericks это решение работает только в том случае, если вы хотите удалить всех существующих людей в Контактах (т. е. импорт заменяет существующую адресную книгу; нет возможности слияния или добавления). Я хотел бы получить способ попасть в файл abbu, не удаляя все мои существующие контакты.
в числах 3.5.3 (yosemite) я не могу найти параметр импорта, способный обрабатывать файлы .abbu...

Наконец-то я нашел довольно простой способ прочитать свой .abbuкаталог, не импортируя его в существующую адресную книгу: создайте нового пользователя, откройте его адресную книгу и импортируйте файл .abbu.

Таким образом, я мог выбрать пару странно потерянных контактов, экспортировать этот выбор и импортировать его в мои существующие контакты.

Я НАШЕЛ РЕШЕНИЕ некоторых проблем, изложенных здесь.

У меня была точно такая же проблема, как у fish923, у меня был файл .abbu, и каждый раз, когда я пытался импортировать свои контакты, приложение «Контакты» синхронизировалось с iCloud и стирало все контакты.

Чтобы успешно восстановить резервную копию, вам нужно сделать следующее:

1.- Отключиться от интернета.
2.- перейдите в папку вашей адресной книги пользователя внутри папки вашей библиотеки: Пользователи/(ваш пользователь)/библиотека/поддержка приложений/адресная книга/…
3.- удалите содержимое внутри папки адресной книги (или переместите их на рабочий стол на всякий случай)
4. - Щелкните правой кнопкой мыши файл .abbu и выберите «Показать содержимое пакета».
5.- Скопируйте содержимое файла .abbu в папку AddressBook.
6.- Откройте приложение «Контакты» и экспортируйте все контакты в виде vCard (убедитесь, что вы выбрали все контакты для экспорта).
7.- Теперь вы можете подключиться к Интернету, приложение «Контакты» синхронизируется с iCloud и снова удалит все ваши контакты, но не волнуйтесь, теперь вы можете импортировать файл формы vCard.

Это сработало для меня. Надеюсь, это поможет кому-то.

Существует способ прямого доступа к данным, сохраненным в .abbuкаталоге (резервной копии адресной книги).

Допустим, вы сохранили свою адресную книгу, предложенную по умолчанию, с именем Contacts - DD-MM-YYYY.abbu. Для этого вам нужно будет использовать командную строку:

cd 'Contacts - DD-MM-YYYY.abbu/Metadata'
plutil -convert xml1 *

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

В Bobтестовом аккаунте .abbuвместо Library/Application Support/AddressBook:

/usr/bin/sudo cp -r 'Contacts - DD-MM-YYYY.abbu/' '/Users/bob/Library/Application Support/AddressBook'

# the / after .abbu directory name is mandatory to copy the contents
# in the destination directory, this will overwrite the address book
# of Bob

/usr/bin/sudo rm '/Users/Bob/Library/Application Support/AdressBook/AddressBook-v22.abcddb'

# the removal of this `.db` will force `Contacts` to rebuild it from
# the contents of the `Metadata` directory.

/usr/bin/sudo chown -R bob '/Users/bob/Library/Application Support/AddressBook'

Предупреждение: не копируйте и не вставляйте приведенные выше команды, если вы не совсем понимаете, что они делают. Пробел или звездочка в любом месте могут повредить вашу рабочую учетную запись, вашу рабочую MacOS X.

Войдите как, Bobчтобы проверить эту новую адресную книгу.