<?xml version="1.0" encoding="UTF-8"?>
<!--
! CCPL HEADER START
!
! This work is licensed under the Creative Commons
! Attribution-NonCommercial-NoDerivs 3.0 Unported License.
! To view a copy of this license, visit
! http://creativecommons.org/licenses/by-nc-nd/3.0/
! or send a letter to Creative Commons, 444 Castro Street,
! Suite 900, Mountain View, California, 94041, USA.
!
! You can also obtain a copy of the license at
! trunk/opendj3/legal-notices/CC-BY-NC-ND.txt.
! See the License for the specific language governing permissions
! and limitations under the License.
!
! If applicable, add the following below this CCPL HEADER, with the fields
! enclosed by brackets "[]" replaced with your own identifying information:
! Portions Copyright [yyyy] [name of copyright owner]
!
! CCPL HEADER END
!
! Copyright 2011-2012 ForgeRock AS
! Portions Copyright 2013 Jens Elkner
!
-->
<refentry xml:id="ldifmodify-1" xmlns="http://docbook.org/ns/docbook"
version="5.0" xml:lang="en"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://docbook.org/ns/docbook http://docbook.org/xml/5.0/xsd/docbook.xsd"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xi="http://www.w3.org/2001/XInclude">
<xi:include href="common.xml" xpointer='xpointer(//info[@name="info"])'/>
<refmeta>
<refentrytitle><application>ldifmodify</application></refentrytitle>
<xi:include href="common.xml" xpointer='xpointer(//manvolnum[@name="v1m"])'/>
</refmeta>
<refnamediv>
<refname><application>ldifmodify</application></refname>
<refpurpose>apply LDIF changes to LDIF</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>ldifmodify</command>
<arg>-s <replaceable class="parameter">srcfile</replaceable></arg>
<arg>-m <replaceable class="parameter">changesfile</replaceable></arg>
<arg>-t <replaceable class="parameter">targetfile</replaceable></arg>
<xi:include href="common.xml"
xpointer='xpointer(//para[@name="s-general"]/*)'/>
</cmdsynopsis>
</refsynopsisdiv>
<refsection>
<title>Description</title>
<para>
This utility can be used to apply a set of modify, add, and delete operations
against data in an LDIF file.
</para>
</refsection>
<refsection>
<title>Options</title>
<para>
The following options are supported.
</para>
<variablelist>
<varlistentry>
<term><option>-s, --sourceLDIF</option> <replaceable
class="parameter">file</replaceable></term>
<listitem>
<para>
LDIF file to use as the source data.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-m, --changesLDIF</option> <replaceable
class="parameter">file</replaceable></term>
<listitem>
<para>
LDIF file containing changes to apply.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-t, --targetLDIF</option> <replaceable
class="parameter">file</replaceable></term>
<listitem>
<para>
LDIF file to use as the target data.
</para>
</listitem>
</varlistentry>
<xi:include href="common.xml"
xpointer='xpointer(//para[@name="l-general"]/*)'/>
</variablelist>
</refsection>
<refsection>
<title>Examples</title>
<informalexample>
<para>
The following example demonstrates use of the command.
</para>
<literallayout><prompt
>$ </prompt><command>cat /tmp/newuser.ldif</command></literallayout>
<screen>
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
</screen>
<literallayout><prompt
>$ </prompt><command>cat /tmp/newdiff.ldif</command></literallayout>
<screen>
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.
</screen>
<literallayout><prompt
>$ </prompt><command>ldifmodify -o neweruser.ldif /tmp/newuser.ldif /tmp/newdiff.ldif</command>
<prompt>$ </prompt><command>cat neweruser.ldif</command></literallayout>
<screen>
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.
</screen>
</informalexample>
</refsection>
<xi:include href="common.xml" xpointer='xpointer(//refsection[@name="env"])'/>
<xi:include href="common.xml" xpointer='xpointer(//refsection[@name="exit-0-gt0"])'/>
<xi:include href="common.xml" xpointer='xpointer(//refsection[@name="seeAlso"])'/>
</refentry>