我正在尝试使用 bash 获取过去 24 小时的集合的 mongodump,但由于我无法在 mongodump 语句的查询参数中使用自定义日期而出现错误。
timeInMs=$(expr "$(date +'%s%3N')" - 86400000)
mongodump -u user -p password --authenticationDatabase admin --db dbname -c collection --query '{startTime:{$gte:new Date(${timeInMs})}}'
timeInMs符合预期(24 小时前的毫秒时间),但问题是查询正确。使用了很多命中和试验,但还没有成功。使用过以下内容:
'{startTime:{$gte:{"$date":"${timeInMs}"}}}'
"{startTime:{$gte:new Date\"(${timeInMs})\"}}"
'{startTime:{$gte:new Date("${timeInMs}")}}'