Я нахожусь в процессе создания бота диссонанса. Весь код, который я написал для бота, работает, за исключением командного файла, который должен его запускать. Первоначально я просто использовал команду node
, и когда я открыл cmd, перешел к папке и набрал ее вручную, она работала нормально, но когда я поместил этот же код в командный файл, он выдал мне эту ошибку:
'узел' не распознается как внутренняя или внешняя команда, работающая программа или пакетный файл.
Это весь код этого командного файла:
@echo off
node bot.js
pause
Команда узла была в моем пути, поэтому я не уверен, почему она не работала, но в другом посте кто-то рекомендовал вместо того, чтобы просто набирать node
, чтобы ввести полный путь к файлу , так что я попробовал это, и это сработало.
Вот новый рабочий код:
@echo off
"C:\Program Files\nodejs\node.exe" bot.js
pause
Затем я установил nodemon . Опять же, это работает в cmd, когда я перешел к папке и набрал ее вручную, но когда я пытаюсь сделать это в командном файле, он не работает. Вместо того, чтобы дать мне ошибку, это было до того, как окно мгновенно закрылось. Вот этот код:
@echo off
nodemon bot.js
pause
Так как у меня есть команда pause в конце кода, она должна остановиться там, если я получу ошибку, но она закрывается до того, как по какой-то причине туда попадет. Команда nodemon
находится в моем пути, и я также попытался заменить nodemon
на путь к файлу, C:\Users\tdkni\AppData\Roaming\npm\nodemon.cmd
, как я рекомендовал в предыдущем посте. Ни одно из этих решений не сработало, и я думаю, что это связано с тем, что есть и другая проблема, кроме того, что команда nodemon
не обнаружена. Я не вижу сообщения об ошибке, поскольку оно мгновенно закрывается, поэтому я не знаю точно, что не так.
Регистрация расширений файлов .bat
и .cmd
осуществляется в соответствии с рекомендацией в комментарии, удаленном за это время.