[英]How to call MongoDB commands using .bat file
I'm trying to execute MongoDB command (for create DB) using .bat file.我正在尝试使用 .bat 文件执行 MongoDB 命令(用于创建 DB) 。
For that I've tried:为此,我尝试过:
cd C:\Program Files\MongoDB\Server\3.4\bin
mongo
mongo --eval "use MyDatabase"
pause
But it gives an error missing ; before statement @(shell eval):1:4
但它给出了一个错误
missing ; before statement @(shell eval):1:4
missing ; before statement @(shell eval):1:4
How can I solve this issue?我该如何解决这个问题?
Side: I've already gone through MongoDB SyntaxError: missing ;边:我已经经历过MongoDB SyntaxError: missing ; before statement @(shell)
声明之前@(shell)
Can you try with :你可以试试:
cd Program Files\MongoDB\Server\3.4\bin
mongo.exe
mongo.exe --eval "use MyDatabase"
pause
I am using a .bat file which works properly and contains this我正在使用一个 .bat 文件,它可以正常工作并包含此文件
cd \Program Files\MongoDB\Server\3.2\bin
mongod.exe
pause
EDIT编辑
I tested a file like this and it works fine (create db, collection and document)我测试了一个这样的文件,它工作正常(创建数据库、集合和文档)
mongodb.bat mongodb.bat
cd \Program Files\MongoDB\Server\3.2\bin
mongo.exe db-mydb --eval "db.yourCollection.insert({key:'value'});"
pause
EDIT 2编辑 2
If you want to run your .bat file on the background, i have made a .VBS file which works properly如果你想在后台运行你的 .bat 文件,我已经制作了一个可以正常工作的 .VBS 文件
mongodb.VBS mongodb.vbs
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "C:\Path\To\Your\mongodb.bat" & Chr(34), 0
Set WshShell = Nothing
Hope it helps希望能帮助到你
START "runas /user:administrator" cmd /K "cd C:\\Program Files\\MongoDB\\Server\\3.4\\bin & mongod.exe --dbpath c:\\data\\db"
START "runas /user:administrator" cmd /K "cd C:\\Program Files\\MongoDB\\Server\\3.4\\bin & mongod.exe --dbpath c:\\data\\db"
TIMEOUT /T 10 START
超时 /T 10 开始
START "runas /user:administrator" cmd /K "cd C:\\Program Files\\MongoDB\\Server\\3.4\\bin & mongo.exe "
START "runas /user:administrator" cmd /K "cd C:\\Program Files\\MongoDB\\Server\\3.4\\bin & mongo.exe "
Try this:尝试这个:
cd C:\Program Files\MongoDB\Server\3.4\bin
mongo.exe
mongo.exe --eval "use MyDatabase"
pause
or use a text file script.txt containing your commands and write batch file as:或使用包含您的命令的文本文件 script.txt 并将批处理文件编写为:
cd C:\Program Files\MongoDB\Server\3.4\bin
mongo.exe mydb < script.txt
can use full path if file is at different location.如果文件在不同的位置,可以使用完整路径。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.