8

出来ますか?特定の時点で削除する必要がある自動生成された mongoDB コレクションがあります。私は彼らのコレクション名のパターンを知っていますが、それらが多すぎるため、手動で削除することはできません。正規表現を使用して調べたすべての例は、クエリを使用していましたが、データベース コマンドを使用していませんでした。すべてのコレクションを反復処理し、それらの名前でフィルタリングできることはわかっていますが、可能であれば、より便利で単一のコマンドを探しています (シェルで直接使用したい) :)

助言がありますか?

ありがとうございました!

4

2 に答える 2

16

MongoDB コンソールを使用して実行できます。

regExp = /test/;
db.getCollectionNames().filter(function(name){
  return name.match(regExp)
}).forEach(function(name){
  db.getCollection(name).drop()
});

コレクション名と一致させるには、任意の正規表現を使用できます。

于 2013-05-13T11:02:15.303 に答える