用于退出的命令是什么?(即终止Node.js进程)


当前回答

我可以通过键入taskkill-F-IM node.exe,让我的所有节点进程直接从Windows 10上的Git Bash shell中消亡-这将立即结束我计算机上的所有节点过程。我发现我也可以使用taskkill//F//IM node.exe。不确定为什么-和//在这种情况下都有效。希望这有帮助!

其他回答

请注意,不建议使用process.ext([number])。

调用process.exit()将强制进程尽快退出即使仍有异步操作等待尚未完全完成,包括I/O操作process.stdout和process.stderr。在大多数情况下,实际上不需要调用process.exit()显式。如果出现以下情况,Node.js进程将自行退出在事件循环中没有附加的工作待定。这个process.exitCode属性可以设置为告诉进程哪个退出当进程正常退出时使用的代码。例如,以下示例说明了process.exit()方法,可能导致打印到stdout的数据截断和丢失://这是一个*不*做什么的例子:if(someConditionNotMet()){打印用途到标准输出();进程.退出(1);}原因是问题是因为在Node.js中写入process.stdout有时是异步的,可能会在Node.js事件循环。然而,调用process.exit()会强制在向stdout进行额外写入之前退出的进程执行。代码应该设置process.exitCode,并通过避免调度事件循环的任何附加工作://如何正确设置退出代码//进程优雅地退出。if(someConditionNotMet()){打印用途到标准输出();process.exitCode=1;}

我有一个应用程序,我想:

向用户发送电子邮件退出并返回错误代码

我必须将process.ext(代码)挂接到退出事件处理程序,否则邮件将不会被发送,因为调用process.ext(代码)直接杀死异步事件。

#!/usr/bin/nodejs
var mailer = require('nodemailer');
var transport = mailer.createTransport();
mail = {
  to: 'Dave Bowman',
  from: 'HAL 9000',
  subject: 'Sorry Dave',
  html: 'Im sorry, Dave. Im afraid I cant do <B>THAT</B>.'
}
transport.sendMail(mail);
//process.exit(1);
process.on('exit', function() { process.exit(1); });

在命令行中,.ext是您想要的:

$ node
> .exit
$

它记录在REPL文档中。REPL(Read Eval Print Loop)是Node命令行的名称。

在正常程序中,使用process.ext([code])。

从代码中,您可以使用process.ext([errorcode]),其中[errorcode]是可选整数(0是表示成功的默认值)。

如果使用的是Read-Eval打印循环(REPL),则可以使用Ctrl+D或键入.ext

或者,在Windows或Linux上,可以使用Ctrl+C、Ctrl+C

在Mac上,命令为Ctrl+Z,Ctrl+Z

如果您在Unix终端或Windows命令行中,并希望退出节点REPL,请选择。。。

按Ctrl+C两次,或键入.ext并按Enter键,或在行开头按Ctrl+D(仅限Unix)