A collection of Java utilities for processing, comparing, and manipulating LDIF (LDAP Data Interchange Format) files.
This project provides several command-line utilities to help LDAP administrators and developers work with LDIF files. Each utility performs a specific function, from comparing LDIF records to extracting attributes and comparing with live directory data.
- Java 8 or higher
- JNDI libraries (included with Java)
Removes specified attributes from LDIF files.
java com.pointblue.ldifutil.StripAttributes <input-file> <output-file> <attributes-to-remove>Example:
java com.pointblue.ldifutil.StripAttributes users.ldif filtered.ldif "userPassword,telephoneNumber,roomNumber"Compares records between two LDIF files and outputs DNs of records that differ.
java com.pointblue.ldifutil.LDIFRecordComparator <ldif-file1> <ldif-file2>Example:
java com.pointblue.ldifutil.LDIFRecordComparator original.ldif updated.ldifExtracts specified attributes from an LDIF file and displays them with their DN.
java com.pointblue.ldifutil.LDIFAttributeExtractor <input-file> <attribute-to-extract>Example:
java com.pointblue.ldifutil.LDIFAttributeExtractor users.ldif mailCompares specific attributes (or all attributes) between two LDIF files.
java com.pointblue.ldifutil.LDIFAttributeComparator <ldif-file1> <ldif-file2> [<attribute-to-compare>]Example:
# Compare only the mail attribute
java com.pointblue.ldifutil.LDIFAttributeComparator file1.ldif file2.ldif mail
# Compare all attributes
java com.pointblue.ldifutil.LDIFAttributeComparator file1.ldif file2.ldifCompares attributes from an LDIF file with corresponding attributes in a live LDAP directory.
java com.pointblue.ldifutil.LDIFAttr2DirAttrCompare <input-file> <attribute-to-extract> <ldap-url> <base-dn> <ldap-username> <ldap-password>Example:
java com.pointblue.ldifutil.LDIFAttr2DirAttrCompare users.ldif mail ldap://ldap.example.com:389 dc=example,dc=com cn=admin,dc=example,dc=com secretpasswordCompile the source files using javac:
javac -d bin src/com/pointblue/ldifutil/*.javaAfter compilation, you can run the utilities using the Java command:
java -cp bin com.pointblue.ldifutil.UtilityName [arguments]These utilities are public domain and may be used freely. The is no warrenty, either explicit or implied.