PHP
Mac
CSV
vCard

Macの連絡先データをCSVに変換する

はじめに

そろそろ年賀状の季節なので、準備を始めました。

連絡先データの書き出し

連絡先アプリを起動し、ファイルメニューから「書き出す」-「vCardを書き出す」を選択。
半角英数でファイル名を指定して保存。

変換用スクリプトのダウンロード

vCard to LDIF/CSV Converter

上記のリンク先から最新版をダウンロードするか、以下のコマンドを実行。

$ cd ~/Downloads
$ curl -L -O https://github.com/thomascube/vcfconvert/archive/v0.8.9.zip
$ unzip v0.8.9.zip

2017年11月12日現在の最新版は0.8.9

スクリプトの修正

変換にPHPスクリプトを使用しているのですが、vCardの連絡先が多いとエラーになるので使用するメモリー量を変更。

「vcfconvert.sh」の20行目あたりに以下の一文を追加。

vcfconvert.sh
@ini_set('memory_limit', '512M');

コマンドの実行

保存した連絡先のファイルを「source_file」という名前に変更し、ダウンロードした「vcfcontert-0.8.9」というフォルダに保存。

保存したら以下のコマンドを実行。

$ cd ~/Downloads/vcfconvert-0.8.9
$ ./vcfconvert.sh -hv -f csv -d ";" -o destination_file.csv source_file.vcf

実行後、「destination_file.csv」というファイルが生成される。

Numbersで開く

Numbersで開き、CSV形式で保存。

Excelへの取込

Excelを開き、新規ファイルを作成。
ファイルメニューから「インポート」を選択。
「CSVファイル」を選択して「インポート」をクリックし、ファイルを選択。
「テキストファイルウィザード」で、「区切り記号付き」、元のファイルは「Unicode (UTF-8)」を指定して「完了」をクリック。

できた!