只好把完整的vcf,按照名字拆开。
代码: 全选
▶ cat split-vcf.pl
#!/usr/bin/perl
$name="";
@l="";
open IN,"<$ARGV[0]"; while(<IN>){
push @l, $_;
if(/FN:(.*)$/){$name=$1;}
elsif (/FN;CHARSET=UTF-8;ENCODING=QUOTED-PRINTABLE:(.*)$/){
print "line=".$_."\n";
$_=$1; s/=//g; $name=pack("H*",$_);
}
$name=~s/\x0d//;
$name=~s/\xd0//;
if(/END:VCARD/){
print "name=".$name."\n";
open OUT,">$name.vcf"; print OUT @l; close OUT;
@l=""; $name="";
}
}
close IN;
▶ adb push *.vcf Documents
▶ adb shell
看了半天 syncevolution -h,才搞清参数。
▶ for i in Documents/*.vcf; do syncevolution --import "$i" backend=evolution-contacts; done
期间经常出glibc等错误。不用管。