使用 .bat 文件启动 Node 服务器

4
我想用一个 .bat 文件启动一个节点服务器,因为每次启动它时都要运行一个 grunt 任务。我尝试在 start.bat 文件中使用以下命令行:
grunt build
node index.js

当我执行它时,它只运行grunt build命令,然后停止。如果我删除grunt build命令,它就可以正常运行node index.js。我做错了什么?
2个回答

4

您可以使用call命令尝试以下操作

call grunt build
node index.js

为什么在 node index.js 命令中不需要使用 call - landunder
1
“问题”的原因是grunt是另一个批处理文件,当它退出时会导致“根”批处理文件停止。由于node不是批处理文件而是.exe文件,因此您不需要它。 - DAXaholic

2

如果您使用 && 将命令链接在一起,它将确保先运行第一个命令,然后再运行第二个命令。 grunt build && node index.js 如果您仍希望它们在不同的行上,可以使用尖角符号来删除换行符。 grunt build &&^ node index.js


再看一遍,这个解决方案更像是一个hack而不是真正的解决方法。我相信DAXaholic的答案才是更正确的实现方式。 - Squirrel
即使这只是一个hack,它的效果更好,因为您不必确认程序的中止。而且感觉快了一点。 - landunder

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接