如何避免Mongo Shell导出CSV文件时添加额外连接信息?
解决Mongo Shell导出CSV时混入连接日志的问题
那些出现在CSV顶部的内容是Mongo Shell启动时默认输出的连接状态和版本日志,要避免它们被写入CSV文件,你可以试试这几种实用方法:
使用
--quiet启动参数(推荐):
这是最直接的解决方案,让Mongo Shell以安静模式启动,直接抑制所有非必要的启动日志。修改你的执行命令为:mongo --quiet export.js > data.csv这个参数会只保留你脚本里通过
print()输出的内容,完美适配CSV导出的需求,不会再把版本、连接信息这类冗余内容写入文件。重定向标准错误输出:
如果遇到--quiet没完全覆盖的场景,或者想彻底屏蔽所有非脚本输出,可以把标准错误(stderr)重定向到空设备:- Linux/macOS环境:
mongo export.js > data.csv 2>/dev/null - Windows命令提示符环境:
mongo export.js > data.csv 2>NUL
这样所有错误日志、启动提示都会被丢弃,只有脚本的正常输出会写入CSV文件。
- Linux/macOS环境:
在脚本内关闭 verbose 模式:
要是你不想修改启动命令,也可以在export.js脚本开头添加一行代码,关闭Shell的 verbose 输出:Mongo().setVerboseShell(false);不过这种方式的效果可能不如
--quiet彻底,还是更推荐第一种方法。
内容的提问来源于stack exchange,提问作者Unnikrishnan
相关产品推荐
相关产品推荐

