次の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'
この場合、パスワードを2回入力する必要があります。他の認証方法も使用できます。
代わりに、-b ... -s one
ディレクトリ構造によっては、異なる検索ライブラリ/範囲/フィルタを定義する必要があります。
grep dn: | cut -b 5- |
この部分は、awk / sed / ...または最適化が必要な他の設定に精通している人に任せます。私は仕事を単純に保つのが大好きです。