【发布时间】:2013-11-01 12:53:06
【问题描述】:
我创建了一个每天备份数据库的 CRON 作业。
脚本有一个 Mongodump 命令,条件是转储 7 天前的记录。
脚本运行良好,直到我将--query 参数添加到mongodump 命令中。
mongodump [host, port and dbparams] --query "{_id: {\$lt: ObjectId(Math.floor(new Date(Date.now() - 86400000*7)/1000).toString(16) + '0000000000000000')}}"
由于--query 引发的错误,其中显示:
assertion: 16619 code FailedToParse: FailedToParse: Expecting quoted string: offset:21
那么将这个查询集成到脚本中的正确方法是什么?
【问题讨论】:
-
使用
'$lt'代替\$lt有帮助吗? -
@OneOfOne 不,没有
'\'的'$lt'给出错误'First character in field must be [A-Za-z$_]: offset:7'。我添加了'\'以逃避$。 -
@sohelkhalifa 我们可以在机器上不安装 mongo shell 的情况下运行脚本吗?