#!/usr/bin/perl -w # $Id: abook2nokia 706 2008-10-12 19:21:18Z thomas $ # http://oopss.org/~thomas/pub/abook2nokia use strict; use Encode; my $abook_file = $ENV{'HOME'}.'/.abook/addressbook'; my $out_dir; if(@ARGV ne 1) { print("Usage: $0 OUTDIR\n"); exit 1; } else { $out_dir = $ARGV[0]; } open FD, "abook --convert --infile $abook_file --outformat gcrd|"; my $i = 1; my $buf = ""; while() { if(/^\s*$/) { open TMP, ">$out_dir/$i.vcf"; Encode::from_to($buf, 'utf-8', 'iso-8859-1'); print TMP $buf; close TMP; $buf = ""; $i++; } else { if(/^N:(.*);(.*)\r$/ && $1 eq $2) { $buf .= "N:$1\n"; } else { $buf .= $_; } } }