Chinaunix首页 | 论坛 | 博客
  • 博客访问: 278772
  • 博文数量: 76
  • 博客积分: 1414
  • 博客等级: 中尉
  • 技术积分: 702
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-14 21:05
文章分类

全部博文(76)

文章存档

2013年(8)

2012年(68)

我的朋友

分类: Python/Ruby

2012-05-05 23:05:27

   用gmail导出的通讯录 vcf 格式所有联系人在一个文件里,因手机只能识别一个文件一个联系人的格式所以需转换下
因手机只认识ansi格式,用notepad++转成 ansi 格式,传到 linux 下执行脚本分离后的文件名,可能是乱码,打个包传到win下就正常了
/home/sh/contacts.vcf vcf是联系人文件
OUTPUT_DIR=/home/sh/contacts 分离后存放的路径
#####################################################################################
#!/bin/sh
#
VCF_FILE=/home/sh/contacts.vcf
cat $VCF_FILE |tr -d '\r'> /tmp/a.vcf
\cp /tmp/a.vcf $VCF_FILE
OUTPUT_DIR=/home/sh/contacts
[ -d $OUTPUT_DIR ] || mkdir -p $OUTPUT_DIR
contacts=()
cat $VCF_FILE|while read item;do
  contacts[${#contacts[*]}]="$item" 
  if [[ "$item" =~ "END:VCARD" ]];then
    FN=$(echo ${contacts[2]}|awk -F":" '{print $2}')
    if [ -z "$FN" ];then
      contacts=()
    else
      echo 'processing' $FN .....
      Count=${#contacts[*]}
      for((j=0;j
echo ${contacts[$j]} >> $OUTPUT_DIR/${FN}.vcf
      done
      contacts=()
    fi
  fi
done
阅读(4511) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~