如何使用.bat文件调用MongoDB命令

Div*_*Div 8 windows batch-file mongodb

我正在尝试使用.bat文件执行MongoDB命令(用于创建数据库).

为此,我尝试过:

cd C:\Program Files\MongoDB\Server\3.4\bin
mongo 
mongo --eval "use MyDatabase"
pause
Run Code Online (Sandbox Code Playgroud)

但它给出了错误missing ; before statement @(shell eval):1:4
我该如何解决这个问题?

方:我已经经历了MongoDB SyntaxError:missing; 在声明@(shell)之前

Spa*_*arw 9

你可以尝试:

cd Program Files\MongoDB\Server\3.4\bin
mongo.exe 
mongo.exe --eval "use MyDatabase"
pause
Run Code Online (Sandbox Code Playgroud)

我正在使用一个正常工作的.bat文件并包含它

cd \Program Files\MongoDB\Server\3.2\bin
mongod.exe
pause
Run Code Online (Sandbox Code Playgroud)

编辑

我测试了这样的文件,它工作正常(创建数据库,集合和文档)

mongodb.bat

cd \Program Files\MongoDB\Server\3.2\bin
mongo.exe db-mydb --eval "db.yourCollection.insert({key:'value'});"
pause
Run Code Online (Sandbox Code Playgroud)

编辑2

如果你想在后台运行你的.bat文件,我已经制作了一个正常工作的.VBS文件

mongodb.VBS

Set WshShell = CreateObject("WScript.Shell") 
WshShell.Run chr(34) & "C:\Path\To\Your\mongodb.bat" & Chr(34), 0
Set WshShell = Nothing
Run Code Online (Sandbox Code Playgroud)

希望能帮助到你