MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Drucken der Mongo-Abfrageausgabe in eine Datei, während Sie sich in der Mongo-Shell befinden

AFAIK, es gibt keine interaktive Option für die Ausgabe in eine Datei, es gibt eine vorherige SO-Frage im Zusammenhang damit:Mongodb-Shell-Ausgabe in Datei drucken

Sie können jedoch die gesamte Shell-Sitzung protokollieren, wenn Sie die Shell mit dem Befehl tee aufgerufen haben:

$ mongo | tee file.txt
MongoDB shell version: 2.4.2
connecting to: test
> printjson({this: 'is a test'})
{ "this" : "is a test" }
> printjson({this: 'is another test'})
{ "this" : "is another test" }
> exit
bye

Dann erhalten Sie eine Datei mit diesem Inhalt:

MongoDB shell version: 2.4.2
connecting to: test
> printjson({this: 'is a test'})
{ "this" : "is a test" }
> printjson({this: 'is another test'})
{ "this" : "is another test" }
> exit
bye

Um alle Befehle zu entfernen und nur die JSON-Ausgabe beizubehalten, können Sie einen ähnlichen Befehl verwenden wie:

tail -n +3 file.txt | egrep -v "^>|^bye" > output.json

Dann erhalten Sie:

{ "this" : "is a test" }
{ "this" : "is another test" }