Mac のアドレスブックPrintMagic の住所録に住所を登録する手順

毛利です。

Mac のアドレスブック(Contacts)から PrintMagic の住所録に住所を登録する手順のメモ。

アドレス帳の登録状況にもよるけど、自分はうまく登録出来てなかった(姓名とか)ので一工夫。(ちゃんと登録してれば、vCard による import ができそう)
AB2CSV というソフト(有料)を使用。

手順
  1. アドレスブックから CSV 形式で export(AB2CSV を使用)
  2. perl で必要な列だけ抽出して保存
  3. PrintMagic に import

アドレスブックから CSV 形式で export(AB2CSV を使用)

起動して実行するだけ。
保存先のフォルダを選ぶと「everyone.csv」というファイルが保存される。

perl で必要な列だけ抽出して保存

アドレスブックは項目が追加できるから人それぞれだろうけど、自分の場合は以下の様な列が作成された。なんかぐちゃぐちゃ。。

Title,First,Middle Name,Last,Suffix,Nickname,Job Title,Organization,Department,Birthday,Notes,Work Fax,iPhone,Home,Main,Other,Mobile 1,Mobile 2,Work 1,Work 2,Pager,Home Page,Home 1,Home 2,自宅メール,携帯メール 1,携帯メール 2,Work 1,Work 2,Other,Home 1 - Street,Home 1 - City,Home 1 - State,Home 1 - ZIP,Home 1 - Country,Home 1 - Country Code,Home 2 - Street,Home 2 - City,Home 2 - State,Home 2 - ZIP,Home 2 - Country,Home 2 - Country Code,Work - Street,Work - City,Work - State,Work - ZIP,Work - Country,Work - Country Code

必要なのは姓、名、郵便番号、住所なのでそれだけ抽出。
住所については、アドレスブックは Street, City, State に分かれてるので結合($F[32] . $F[31] . $F[30] の部分)。

# 出力を確認
perl -F"," -a -nle 'print join(",", $F[3], $F[1], $F[33], $F[32] . $F[31] . $F[30]) if( $F[32] !~ /^$/ );' everyone.csv
# 問題なければ -i オプションで上書き
perl -i -F"," -a -nle 'print join(",", $F[3], $F[1], $F[33], $F[32] . $F[31] . $F[30]) if( $F[32] !~ /^$/ );' everyone.csv


ちなみにヘッダの番号はこんな感じで確認可能。

# head -1 everyone.csv | perl -le '@column=split(/,/, <STDIN>); $i=0; printf("%3d  %s\n", $i++, $_) for @column'
  0  Title
  1  First
  2  Middle Name
  3  Last
  4  Suffix
  5  Nickname
  6  Job Title
  7  Organization
  8  Department
  9  Birthday
 10  Notes
 11  Work Fax
 12  iPhone
 13  Home
 14  Main
 15  Other
 16  Mobile 1
 17  Mobile 2
 18  Work 1
 19  Work 2
 20  Pager
 21  Home Page
 22  Home 1
 23  Home 2
 24  自宅メール
 25  携帯メール 1
 26  携帯メール 2
 27  Work 1
 28  Work 2
 29  Other
 30  Home 1 - Street
 31  Home 1 - City
 32  Home 1 - State
 33  Home 1 - ZIP
 34  Home 1 - Country
 35  Home 1 - Country Code
 36  Home 2 - Street
 37  Home 2 - City
 38  Home 2 - State
 39  Home 2 - ZIP
 40  Home 2 - Country
 41  Home 2 - Country Code
 42  Work - Street
 43  Work - City
 44  Work - State
 45  Work - ZIP
 46  Work - Country
 47  Work - Country Code

PrintMagic に import


いじょ。