如何隐藏由“pm2 start”创建的节点 cmd 窗口

Posted

技术标签:

【中文标题】如何隐藏由“pm2 start”创建的节点 cmd 窗口【英文标题】:How to hide node cmd windows created by "pm2 start" 【发布时间】:2017-04-29 07:44:17 【问题描述】:

每个节点进程一个 cmd 窗口,我不知道这些窗口是做什么用的。我可以隐藏它们吗?

【问题讨论】:

运气不好!这是一个已知问题,请参阅此处github.com/Unitech/pm2/issues/2182 你修好了吗? 【参考方案1】:

您可以做的是,嗯...在我的情况下,我使用 Visual Studio Code,您忘记在您的问题中包含您的 IDE。现在有了 VSC,我已经集成了终端,所以我并没有真正浮动 3 个窗口。现在,有一个 Windows 的解决方法,在 mac 中不会发生这种情况,以便让您必须在设置中包含 3 个窗口:

//Terminal Configurations

//PowerShell Windows
//"terminal.integrated.shell.windows": "C:\\WINDOWS\\system32\\cmd.exe",

//GIT Bash Configuration
"terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",

所以当你点击加号时,它会创建一个“新窗口”但不会四处浮动,请看:

顺便说一句,你不能同时激活两个,一个用于 bash,一个用于 cmd,我将 cmd 用于我的 mongodb,而 bash 用于其余部分。

如果您愿意,也可以将 bash 或 cmd 替换为 nodejs 命令行,只需将其放在上述路径之一中即可:)

希望对你有帮助!

【讨论】:

【参考方案2】:

使用 AutoHotkey 我在 Windows 上为我解决了这个问题。这将在任务栏的通知区域(时钟旁边的某个位置)中添加一个托盘图标。您还可以通过右键单击此图标然后“退出”来停止脚本本身和 node.js 脚本。

#SingleInstance, force

OnExit, ExitSub
RunWait, node "main.js", % A_ScriptDir, Hide, pid
ExitApp

ExitSub:
Process, close, % pid
ExitApp

使用%comspec%,您可以根据需要将输出写入文件。这将类似于RunWait, %comspec% /c "node "main.js" > "log.txt""

【讨论】:

以上是关于如何隐藏由“pm2 start”创建的节点 cmd 窗口的主要内容,如果未能解决你的问题,请参考以下文章

pm2 观察报错时 pm2 start app.js --watch

pm2 start app 命令工作,但它给出了状态错误

如何从我的 Matlab Exe 中隐藏 cmd 控制台?

如何在地图上显示/隐藏?

SCENekit:未隐藏节点的问题

如何在 PySide 应用程序中隐藏 CMD 窗口