【发布时间】:2019-02-02 03:06:07
【问题描述】:
我正在制作一个不和谐的机器人。我为机器人编写的所有代码都可以工作,除了应该运行它的批处理文件。最初我只是使用node 命令,当我打开cmd,导航到文件夹并手动输入它时它工作正常,但是当我将相同的代码放入批处理文件时它给了我这个错误:
'node' 不是内部或外部命令、可运行程序或批处理文件。
这是该批处理文件的所有代码:
@echo off
node bot.js
pause
node 命令在我的路径中,所以我不确定它为什么不起作用,但在另一个 post 中,有人建议不要只输入 node 来输入完整的文件路径,所以我尝试了这和它的工作。
这是新的工作代码:
@echo off
"C:\Program Files\nodejs\node.exe" bot.js
pause
然后我安装了 nodemon。当我导航到文件夹并手动键入它时,这在 cmd 中再次起作用,但是当我尝试在批处理文件中执行它时它不起作用。而不是在窗口立即关闭之前给我错误。这是代码:
@echo off
nodemon bot.js
pause
由于我在代码末尾有暂停命令,因此如果出现错误,它应该会停在那里,但由于某种原因它在到达那里之前就关闭了。 nodemon 命令在我的路径中,我还尝试将 nodemon 替换为文件路径 C:\Users\tdkni\AppData\Roaming\npm\nodemon.cmd,就像我在上一篇文章中推荐的那样。这些解决方案都不起作用,我认为这是因为除了没有检测到nodemon 命令之外还有其他问题。我没有看到任何错误消息,因为它会立即关闭,所以我不知道到底出了什么问题。
文件扩展名.bat和.cmd的注册根据同时删除的评论中的建议如下。
【问题讨论】:
-
打开 cmd.exe,然后从那里运行脚本,它会告诉你问题出在哪里。不要双击批处理文件。
-
是的,我就是这样做的,我打开 cmd,进入文件夹,输入批处理文件的名称,它运行良好,但是当我双击它时它就关闭了。跨度>
标签: node.js batch-file npm cmd nodemon