Ich versuche, den MongoDB-Befehl (für DB erstellen) mit der .bat-Datei auszuführen.
Dafür habe ich versucht:
cd C:\Program Files\MongoDB\Server\3.4\bin
mongo
mongo --eval "use MyDatabase"
pause
Aber es gibt einen Fehler missing ; before statement @(Shell eval):1:4
Wie kann ich dieses Problem lösen?
Seite: Ich habe bereits MongoDB SyntaxError: missing; before Anweisung @ (Shell) durchlaufen.
Kannst du es mit:
cd Program Files\MongoDB\Server\3.4\bin
mongo.exe
mongo.exe --eval "use MyDatabase"
pause
Ich verwende eine .bat-Datei, die ordnungsgemäß funktioniert und diese enthält
cd \Program Files\MongoDB\Server\3.2\bin
mongod.exe
pause
EDIT
Ich habe eine Datei wie diese getestet und sie funktioniert einwandfrei (db, Sammlung und Dokument erstellen)
mongodb.bat
cd \Program Files\MongoDB\Server\3.2\bin
mongo.exe db-mydb --eval "db.yourCollection.insert({key:'value'});"
pause
EDIT 2
Wenn Sie Ihre .bat-Datei im Hintergrund ausführen möchten, habe ich eine .VBS-Datei erstellt, die ordnungsgemäß funktioniert
mongodb.VBS
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run chr(34) & "C:\Path\To\Your\mongodb.bat" & Chr(34), 0
Set WshShell = Nothing
Ich hoffe es hilft
START "runas/user: administrator" cmd/K "cd C:\Programme Dateien\MongoDB\Server\3.4\bin & mongod.exe - dbpath c:\data\db"
TIMEOUT/T 10 START
START "runas/user: administrator" cmd/K "cd C:\Programme Dateien\MongoDB\Server\3.4\bin & mongo.exe"