LDIF - 如果存在则删除属性
LDIF - Delete Attribute IF Exists
我们正在使用以下 LDIF 从我们的 LDAP 目录中删除 POSIX 属性。这工作正常,除非属性不存在。例如如果 homedirectory 属性不存在,它将失败。我怎样才能做到这一点,即使没有为条目设置一个或多个属性,也会删除其余属性?
dn: uid=5,ou=people,o=company.com,o=corp
changetype: modify
delete: uidnumber
-
delete: homedirectory
-
delete: objectclass
objectclass: posixAccount
-
delete: loginshell
-
delete: unixusername
-
delete: gidnumber
-
无法在 LDIF 文件本身中执行此类逻辑。您必须将不同条目中的修改分开...
dn: uid=5,ou=people,o=company.com,o=corp
changetype: modify
delete: uidnumber
dn: uid=5,ou=people,o=company.com,o=corp
changetype: modify
delete: homeDirectory
dn: uid=5,ou=people,o=company.com,o=corp
changetype: modify
delete: loginShell
..等等。
在不提供值的情况下设置要替换的属性将在不存在时将其删除:
dn: uid=5,ou=people,o=company.com,o=corp
changetype:modify
replace: title
title: Senior Developer
-
replace: departmentNumber
-
replace: displayName
displayName: Foo
这将删除 departmentNumber
属性。
我们正在使用以下 LDIF 从我们的 LDAP 目录中删除 POSIX 属性。这工作正常,除非属性不存在。例如如果 homedirectory 属性不存在,它将失败。我怎样才能做到这一点,即使没有为条目设置一个或多个属性,也会删除其余属性?
dn: uid=5,ou=people,o=company.com,o=corp
changetype: modify
delete: uidnumber
-
delete: homedirectory
-
delete: objectclass
objectclass: posixAccount
-
delete: loginshell
-
delete: unixusername
-
delete: gidnumber
-
无法在 LDIF 文件本身中执行此类逻辑。您必须将不同条目中的修改分开...
dn: uid=5,ou=people,o=company.com,o=corp
changetype: modify
delete: uidnumber
dn: uid=5,ou=people,o=company.com,o=corp
changetype: modify
delete: homeDirectory
dn: uid=5,ou=people,o=company.com,o=corp
changetype: modify
delete: loginShell
..等等。
在不提供值的情况下设置要替换的属性将在不存在时将其删除:
dn: uid=5,ou=people,o=company.com,o=corp
changetype:modify
replace: title
title: Senior Developer
-
replace: departmentNumber
-
replace: displayName
displayName: Foo
这将删除 departmentNumber
属性。