15位身份证号码转18位

原创 2006年06月02日 14:57:00

15位身份证号码转18位:

clear;echo "/n请输入15位证件号码:/c"
read zj0
if [ ! "$zj0" ]; then exit; fi
ws=`expr length $zj0`
if [ $ws != 15 ];  then echo "/n身份证位数错误!!/c";read jkl;exit;fi
zj1=`echo $zj0|cut -c1-6`
zj2=`echo $zj0|cut -c7-`
sfz=$zj1"19"$zj2"0"
i=1; rm -f sfz.txt
while [ $i -lt 19 ]
 do
ai=`echo $sfz|cut -c$i-$i`
wi=`echo "7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 1"|awk -v I=$i '{print $I}'`
awi=`echo $ai*$wi|bc`
echo "$awi">>sfz.txt
i=`expr $i + 1`
done
sbh=`awk '{s=s+$1}END{print s%11}' sfz.txt`
case $sbh in
 0) mw=1;;
 1) mw=0;;
 2) mw=X;;
 3) mw=9;;
 4) mw=8;;
 5) mw=7;;
 6) mw=6;;
 7) mw=5;;
 8) mw=4;;
 9) mw=3;;
10) mw=2;;
esac
echo "15位证件号::[$zj0]
18位证件号:[$zj1"19"$zj2$mw]"

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

面向对象的15位、18位中国大陆身份证号码解析、验证工具

import java.text.SimpleDateFormat; import java.util.Date; /** * 身份证号码,可以解析身份证号码的各个字段,以及验证身份证号码是否有效...

java代码实现15位身份证号码升级到18位

18位身份证号码的组成: 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码, 三位数字顺序码和一位数字校验码。 六位数字地址...
  • mhmyqn
  • mhmyqn
  • 2012-06-22 12:14
  • 10308

java 校验15位或18位身份证号码

package com.first.common.utility.idcard; import java.text.SimpleDateFormat; import java.util.C...

JS校验身份证号码(15位和18位)

http://www.w3.org/TR/html4/loose.dtd"> 校验身份证号码   function checkIdCard(card){   var vc...
  • xwnxwn
  • xwnxwn
  • 2012-06-05 08:23
  • 6470

面向对象的15位、18位中国大陆身份证号码解析、验证工具

import java.text.SimpleDateFormat; import java.util.Date; /** * 身份证号码,可以解析身份证号码的各个字段,以及验证身份证号码...

java代码实现15位身份证号码升级到18位

转载网址   点击打开链接 转载一份作为记录,真心不错。受教! 18位身份证号码的组成: 公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地...

新旧身份证合法性验证及相互转换算法(三):Java身份证号码验证及将15位转换18位

package test; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 身份证号码验证...

15位身份证转18位

  • 2008-06-20 09:36
  • 24KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)