Node.js 在nodeJs退出代码1中生成mongodump集群

Node.js 在nodeJs退出代码1中生成mongodump集群,node.js,mongodb,mongodump,Node.js,Mongodb,Mongodump,我想将mongodump运行到Mongo Atlas中的集群。我已经从Mongo Atlas复制了执行此操作的代码 mongodump --uri mongodb+srv://lims:<PASSWORD>@cluster0.f3zyz.mongodb.net/<DATABASE> mongodump--urimongodb+srv://lims:@cluster0.f3zyz.mongodb.net/ 如果我替换“PASSWORD”和“DATABASE”并在控制台

我想将mongodump运行到Mongo Atlas中的集群。我已经从Mongo Atlas复制了执行此操作的代码

mongodump --uri mongodb+srv://lims:<PASSWORD>@cluster0.f3zyz.mongodb.net/<DATABASE> 
mongodump--urimongodb+srv://lims:@cluster0.f3zyz.mongodb.net/
如果我替换“PASSWORD”和“DATABASE”并在控制台上运行该命令,它将按预期工作

但是,当我尝试将它作为子进程从Nodejs运行时,它将以代码1退出

const backupProcess = spawn('mongodump', 
        [
            '--uri mongodb+srv://lims:<PASSWORD>@cluster0.f3zyz.mongodb.net/<DATABASE>',
        ] 
       );
const backupProcess=spawn('mongodump',
[
“--乌里·蒙戈德+srv://lims:@cluster0.f3zyz.mongodb.net/',
] 
);
为什么它在控制台中工作而在节点中不工作


有没有一种方法可以看到孩子们在做什么?我曾尝试侦听
backupProcess.on('message',(msg)=>console.log(msg))
,但未记录任何内容。

args是字符串参数数组。您将所有参数都放在一个参数中。尝试:

const backupProcess = spawn('mongodump', 
        [
            '--uri', 'mongodb+srv://lims:<PASSWORD>@cluster0.f3zyz.mongodb.net/<DATABASE>',
        ] 
       );

const backupProcess=spawn('mongodump',
[
“--uri”、“mongodb”+srv://lims:@cluster0.f3zyz.mongodb.net/',
] 
);

若要查看进程输出,请设置为“继承”

,其效果非常好!!!非常感谢你!!!整天伤我的头。