Ubuntu 18下Mongosh 2.2与MongoDB 6.0输入括号后无响应求助
解决Mongosh输入括号结尾命令无法执行的问题
确认括号配对:Mongosh的交互式shell会严格检查语法完整性,只要有括号没配对,就会判定你还在输入命令,回车自然没反应。你贴的创建用户命令括号是配对的,但手动输入时可能不小心漏了,建议再逐行核对一遍
()、{}、[]的配对情况。强制提交执行:如果确定命令语法没问题,却一直卡在输入状态,直接按
Ctrl+D,这个快捷键在Ubuntu的交互式环境里可以强制结束输入并提交执行命令。改用单行命令:把多行命令合并成单行,用分号分隔不同操作,比如:
use admin; db.createUser({user: "Final", pwd: "testpassone", roles: [{role: "readWrite", db: "test"}, {role: "read", db: "reporting"}]})
输入完成后直接回车,大概率能正常执行。
排查版本兼容性:虽然Mongosh 2.2和MongoDB 6.0.15理论上兼容,但小版本的bug也可能导致这类问题。可以尝试把Mongosh升级到同系列的最新稳定版,或者降级到2.1.x版本试试。
更换终端测试:偶尔终端的换行符或输入设置会干扰Mongosh的交互,换个终端(比如从GNOME Terminal换成xterm、Konsole)再执行命令,排除终端本身的问题。
内容的提问来源于stack exchange,提问作者adamchallenger
相关产品推荐
相关产品推荐

