Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/react-native/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js pm2-未启动时如何启动,启动时如何停止和启动_Node.js_Windows_Pm2 - Fatal编程技术网

Node.js pm2-未启动时如何启动,启动时如何停止和启动

Node.js pm2-未启动时如何启动,启动时如何停止和启动,node.js,windows,pm2,Node.js,Windows,Pm2,如果pm2没有运行,我会尝试启动它,如果它正在运行,我会杀死它并启动它。如何在WINDOWS命令行界面中实现此行为 在linux中有很多使用grep的解决方案,但在windows中却没有,你知道如何实现这种行为吗 文档中说,pm2 start-f app.js将杀死并启动该应用程序,但它实际上只是创建了另一个实例。我会这样做: pm2 stop myprocess.js #this will just say process not found pm2 start myprocess.js 或

如果pm2没有运行,我会尝试启动它,如果它正在运行,我会杀死它并启动它。如何在WINDOWS命令行界面中实现此行为

在linux中有很多使用grep的解决方案,但在windows中却没有,你知道如何实现这种行为吗

文档中说,
pm2 start-f app.js
将杀死并启动该应用程序,但它实际上只是创建了另一个实例。

我会这样做:

pm2 stop myprocess.js #this will just say process not found
pm2 start myprocess.js
或者,如果要清除所有内容:

pm2 kill
pm2 stop

如果您想要更多高级的可能性,请查看

似乎没有一种“单一命令”的方法来实现这一点,这在许多开发环境中都非常重要,因此这里有一些选项:

把索尤卡的建议放在一行

pm2 stop myprocess; pm2 start myprocess.js
这将输出错误,但会起作用

他们的生态系统工具中也内置了此选项。要使用此选项,请进入您正在使用的文件夹并运行

pm2 ecosystem
这将生成一个文件
ecosystem.config.js
,您需要确保您的名字和脚本在其中是正确的

然后可以使用以下命令:

pm2 startOrReload ecosystem.config.js
一、 但是,我也希望看到我的日志,因此我使用以下命令:

pm2 flush && pm2 startOrReload ecosystem.config.js && pm2 log
这还将刷新日志,使您看不到旧日志。

使用以下方法:

pm2 delete main.js2>/dev/null&&pm2 start main.js


这部分:
2>/dev/null
-将简单地将stderr重定向到
/dev/null
,这意味着无处可去。

您可以这样做

pm2删除你的应用程序名称:&&pm2 start index.js-i 1——命名“你的应用程序名称”


:是返回0成功退出代码的空运算符。因此,无论发生什么情况,pm2 start命令都将执行(即使pm2 delete失败,如果应用程序尚不存在)。

为什么不发布一个kill?请阅读此链接,有很多CMD,您好,
找不到进程
部分导致错误,阻止脚本的下一位执行…如果脚本未运行,这将使脚本失败,请尝试:pm2 delete main.js 2>/dev/null | | true