Name

ldif-diff — compare small LDIF files

Synopsis

ldif-diff {options}

Description

This utility can be used to compare two LDIF files and report the differences in LDIF format.

Options

The following options are supported.

-a, --ignoreAttrs {file}

File containing a list of attributes to ignore when computing the difference.

--checkSchema

Takes into account the syntax of the attributes as defined in the schema to make the value comparison. The provided LDIF files must conform to the server schema.

-e, --ignoreEntries {file}

File containing a list of entries (DN) to ignore when computing the difference.

-o, --outputLDIF {file}

File to which the output should be written.

-O, --overwriteExisting

Any existing output file should be overwritten rather than appending to it.

-r, --useCompareResultCode

Use the LDAP compare result as an exit code for reporting differences between the two LDIF files.

-s, --sourceLDIF {file}

LDIF file to use as the source data.

-S, --singleValueChanges

Each attribute-level change should be written as a separate modification per attribute value rather than one modification per entry.

-t, --targetLDIF {file}

LDIF file to use as the target data.

-V, --version

Display version information.

-?, -H, --help

Display usage information.

Exit Codes

0

The command completed successfully.

5

The -r option was used, and no differences are reported.

6

The-r option was used, and differences are reported.

other

An error occurred.

Examples

The following example demonstrates use of the command with two small LDIF files.

$ cat /path/to/newuser.ldif 
dn: uid=newuser,ou=People,dc=example,dc=com
uid: newuser
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: top
cn: New User
sn: User
ou: People
mail: newuser@example.com
userPassword: changeme

$ cat /path/to/neweruser.ldif 
dn: uid=newuser,ou=People,dc=example,dc=com
uid: newuser
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: top
cn: New User
sn: User
ou: People
mail: newuser@example.com
userPassword: secret12
description: A new description.

$ ldif-diff -s /path/to/newuser.ldif -t /path/to/neweruser.ldif
dn: uid=newuser,ou=People,dc=example,dc=com
changetype: modify
add: userPassword
userPassword: secret12
-
delete: userPassword
userPassword: changeme
-
add: description
description: A new description.