Link to home
Start Free TrialLog in
Avatar of aev2061
aev2061

asked on

change output of ldif file

Been searching the topics and haven't found anything and thought I would ask. I am looking for help. I have output in an ldif file that I need to read the SN and the givenName and overwrite what is in the CN with (givenName SN). This is for an ever growing number of users.

example
from
cn: BLAH
sn: LastName
givenName: FirstName

to
cn: Firstname Lastname
sn: LastName
givenName: FirstName
Avatar of terencino
terencino
Flag of Australia image

Hi I got this to work on the limited info I had for your LDIF file, can you test it and let me know how you go? It uses the FileSystemObject to read and write the file and the Mid function to modify the CN line. I'm not sure how LDIF files end (to stop the loop with the AtEndOfStream property), so it will probably crash at the end. If so could probably get round it with On Error
...Terry
Option Explicit
Dim objFSO, objImport, objExport
Dim Line1, Line2, Line3, Line4
Dim strImport, strExport
Set objFSO = CreateObject("Scripting.FileSystemObject")
strImport = "C:\test.ldf"
strExport = "C:\test_fix.ldf"
Set objImport = objFSO.GetFile(strImport)
Set objImport = objFSO.OpenTextFile(objImport, 1)
Set objExport = objFSO.CreateTextFile(strExport)
Do Until objImport.AtEndOfStream
	Line1 = objImport.ReadLine
	Line2 = objImport.ReadLine
	Line3 = objImport.ReadLine
	Line4 = objImport.ReadLine
	objExport.WriteLine "cn: " & Mid(Line3,12,200) & " " & Mid(Line2,5,200)
	objExport.WriteLine Line2
	objExport.WriteLine Line3
	objExport.WriteLine Line4
Loop
objImport.Close
objExport.Close

Open in new window

Avatar of aev2061
aev2061

ASKER

Thanks for your response. Below is an output of an ldf file so you can see how 2 exports would look like and the file ends just like it is. I guess it would have help had I put a better example in my first post. As you can see better now I am try to replace the
(cn: Person1) with (cn: Bill Smith) and likewise the (cn: Person2) with (cn: Sandy Jones), etc, etc...

dn: CN=BLAH1,OU=OFFICEUSR,OU=OFFICE1,OU=AAA,OU=BB,DC=city,DC=state,DC=com
#changetype: add
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: Person1
sn: Smith
givenName: Bill
displayName: Smith, Bill
sAMAccountName: Person1
userPrincipalName: Person1@city.state.com
mail: Bill.Smith@state.com

dn: CN=BLAH2,OU=OFFICEUSR,OU=OFFICE1,OU=AAA,OU=BB,DC=city,DC=state,DC=com
#changetype: add
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: user
cn: Person2
sn: Jones
givenName: Sandy
displayName: Jones, Sandy
sAMAccountName: Person2
userPrincipalName: Person2@city.state.com
mail: Sandy.Jones@state.com
ASKER CERTIFIED SOLUTION
Avatar of terencino
terencino
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of aev2061

ASKER

That works and helps me learn a little more on how this works!

Thanks
Avatar of aev2061

ASKER

Thanks for the help!