ldap迁移脚本group
来源:互联网 发布:炒外汇技术大数据 编辑:程序博客网 时间:2024/06/16 05:32
#!/usr/bin/perl -w
##by yingying.liu @ 2013.3.28 11:03
##Release 1.0
use strict;
use warnings;
use Encode;
use DBI;
use MIME::Base64;
use MIME::QuotedPrint;
use Encode;
use Cache::Memcached;
use Getopt::Long;
my $flag = 0;
my $ldap_data = "ldapinfo.txt";
my $sn = " ";
my $cn = " ";
my $ordered = " ";
my $created = " ";
my $modified = " ";
#connect to mysql;
my $sql = " ";
my $rows = " ";
my $conn;
$conn = DBI->connect("DBI:mysql:database=lyy:host=127.0.0.1","root","123456",{'RaiseError' => 1});
open MAILFORSEC,"$ldapinfo.txt";
open TMPFILE,">>move.log";
#循环读取文件中的每一行
foreach my $line (<MAILFORSEC>)
{
#以dn: 和dn::开头的行,以dn::开始的行是经过base64编码的,所以一般需要解码过程
if($line =~ /^dn: cn=(.*),ou=systemGroup,ou=Groups,domainName/i || $line =~ /^dn:: (.*)/i || $flag == 1) {
$flag = 1;
#匹配sn:行数据
if($line =~ /^sn: (.*)/i){
$sn = $1;
}
#匹配cn:或者cn::的行数据
elsif($line =~ /^cn: (.*)/i || $line =~ /^cn:: (.*)/i){
$cn = $1;
if($line =~ /^cn:: (.*)/i){ //cn::是经过base64编码的
$cn = decode_base64($1); //解码成中文
}
}
elsif($line =~ /^ordered: (.*)/i){
$ordered = $1;
}
elsif($line =~ /^created: (.*)/i){
$created = $1;
}
elsif($line =~ /^modified: (.*)/i){
$modified = $1;
}
}
if($line =~ /^#/i){ //匹配注释行
my $befor = "SET NAMES 'utf8'"; //解决中文insert into mysql是出现乱码问题,之前在网上看用gdb2312不管用。
$rows = $conn->do($befor); //运行befor语句
#组合insert语句
$sql = sprintf("INSERT INTO group(id,name,ordered,created,modified) VALUES('$sn','$cn','%s','$order','$created','$modified');",$cn);
#insert into mysql
$rows = $conn->do($sql);
$accountStatus = 0;
$flag = 0;
next;
}
}
}
close(MAILFORSEC);
close(TMPFILE);
- ldap迁移脚本group
- LDAP脚本
- MiediwWiki LDAP配置脚本
- linux用户带密码迁移 LDAP
- excel 自动group脚本
- 数据迁移脚本备案
- wordpress 站点迁移脚本
- 数据迁移脚本
- svn库迁移脚本
- 数据库迁移脚本
- python数据库迁移脚本
- LDAP配置 Hadoop Group Mapping参数填写原理
- python实现LDAP中组(group)添加用户(user)功能
- 一个简单的php LDAP认证脚本
- mysql数据迁移shell 脚本
- python实现数据库迁移脚本
- CSDN迁移Hexo脚本分享
- sqlite迁移到mysql脚本
- Studio for WPF 和 Silverlight 本地化, Localization, Localización, Lokalisering
- NDK in cocos2d-x
- C语言解释器-5 类型系统
- file mime 类型表
- 读取excel到对象
- ldap迁移脚本group
- 商场家电库存模型
- 浅谈观察者设计模式
- GDB常用命令说明
- MercurialHg介绍与安装
- JVM调优:选择合适的GC collector
- 反射+枚举+freemarker,自动生成实体类,自动建表建索引(二)之建表建索引,注解和DatabaseMetaData 获取信息
- Cocos2d-x Android配置
- Linux Fixmap 的作用