AFAIK、ファイルに出力するためのインタラクティブなオプションはありません。これに関連する以前のSOの質問があります:mongodbシェル出力をファイルに出力する
ただし、teeコマンドでシェルを呼び出した場合は、すべてのシェルセッションをログに記録できます。
$ 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
次に、このコンテンツを含むファイルを取得します:
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
すべてのコマンドを削除し、json出力のみを保持するには、次のようなコマンドを使用できます。
tail -n +3 file.txt | egrep -v "^>|^bye" > output.json
次に、次のようになります:
{ "this" : "is a test" }
{ "this" : "is another test" }