我想通过一些查询从shell脚本文件中删除mongo数据库的一些文件。
我使用以下命令,但这不起作用。
mongo dbName --eval "db.collection.remove({"param1":"value"})"
如何通过命令行从shell脚本中删除mongo数据库中的文件?
答案 0 :(得分:4)
您的命令行对shell字符串使用双引号,并在字符串本身中使用字符串分隔符。这会导致shell混淆。你可以逃脱你的“在字符串中:
mongo dbName --eval "db.collection.remove({\"param1\":\"value\"})"
或使用单引号,例如:
mongo dbName --eval 'db.collection.remove({"param1":"value"})"'
我建议您在整个字符串周围使用单引号,而不是在字符串中使用单引号,因为这也意味着包含$
的字符串未插入或导致其他问题。