Com este cli:
$ ldapdelete -ZZ -W -D "cn=Manager,dc=site,dc=fake" -r ou=People,dc=site,dc=fake
Eu removo todos os UIDs de Pessoas, mas o problema é que também remove a OU de Pessoas. Eu sei que é fácil recriar uma OU vazia, mas gostaria de remover todos os UIDs da OU de Pessoas, mas preservar a OU de Pessoas real?
Desculpe a demora, mas primeiro tive que instalar e preencher um servidor LDAP para testar o procedimento correto. Como
ldapdelete
lê a lista de objetos do STDIN se não houver nenhum apresentado na linha de comando (ou em um arquivo), você pode usar um pipe comoIsso solicitará a senha duas vezes; talvez você possa usar algum outro método de autenticação.
Em vez de
-b ... -s one
você pode ter que definir alguma outra base/escopo/filtro de pesquisa, dependendo da estrutura do diretório.Deixo a parte
grep dn: | cut -b 5- |
para aqueles que estão familiarizados com awk/sed/... quaisquer outras construções para otimizar. Eu só gosto de manter as coisas simples.