tetsunosukeのnotebook

tetsunosukeのメモです

LDIFファイルを解析しちゃう

use strict;
use Net::LDAP;
use Net::LDAP::LDIF;

if(!@ARGV){die &usage;}

my $ldifFile = shift @ARGV;
my $ldif = Net::LDAP::LDIF->new($ldifFile);


print "<<======START======>>","\n";
my $entries = 0;
while(not $ldif->eof()){
        $entries++;
        print "======= $entries =======", "\n";
        my $entry = $ldif->read_entry();

        if($ldif->error()){
                print "Error:" , $ldif->error(), "\n";
                print "Error_lines:\n", $ldif->error_lines(), "\n";
        } else {
                foreach my $attr ( $entry->attributes ) {
                        # print join( "\n ", $attr, $entry->get_value( $attr ) ), "\n";
                        print join( ":", $attr, $entry->get_value( $attr ) ), "\n";
                }
        }

}
$ldif->done();
print "<<======END======>>","\n";


##
# usage():  print usage
#

sub usage{
        return "Usage: perl ldifParser.perl <LDIF file>" , "\n";
}