mongo 10.78.13.144/staging --eval="db.companies.update({'internal':'internal.domain.com'},{$set:{'internal':'staging.internal.domain.com'}});"
MongoDB shell version: 2.4.8
connecting to: 10.78.13.144/portal_staging
Mon Nov 18 08:59:59.116 SyntaxError: Unexpected token :
这个命令可以直接在mongo shell中执行,但不能从外部执行。我们尝试了各种方法来执行此命令,但都抛出相同的错误:
SyntaxError: Unexpected token :
答案 0 :(得分:1)
$set
被解释为shell变量。你需要逃脱它:
--eval="db.companies.update({'internal':'internal.domain.com'},{\$set:{'internal':'staging.internal.domain.com'}});"