다음 CLI를 사용하세요.
$ ldapdelete -ZZ -W -D "cn=Manager,dc=site,dc=fake" -r ou=People,dc=site,dc=fake
People의 UID를 모두 삭제했는데 문제는 People OU도 삭제했다는 점입니다. 빈 OU를 다시 만드는 것이 쉽다는 것을 알고 있지만 People OU의 모든 UID를 삭제하고 실제 People OU는 유지하고 싶습니다.
답변1
지연되어 죄송합니다. 올바른 프로세스를 테스트하기 전에 LDAP 서버를 설치하고 채워야 했습니다. STDIN에서 개체 목록을 읽을 때 ldapdelete
명령줄(또는 파일)에 개체가 나타나지 않으면 유사한 파이프를 사용할 수 있습니다.
ldapsearch -ZZ -W -D 'cn=Manager,dc=site,dc=fake' \
-b 'ou=people,dc=site,dc=fake' -s one dn |\
grep dn: | cut -b 5- | ldapdelete -ZZ -W -D 'cn=Manager,dc=site,dc=fake'
이 경우 비밀번호를 두 번 입력해야 합니다. 다른 인증 방법을 사용할 수도 있습니다.
대신 -b ... -s one
디렉터리 구조에 따라 다른 검색 라이브러리/범위/필터를 정의해야 할 수도 있습니다.
grep dn: | cut -b 5- |
이 부분은 awk/sed/... 또는 최적화가 필요한 다른 구성에 익숙한 사람들 에게 맡기겠습니다 . 나는 일을 단순하게 유지하는 것을 좋아합니다.