我试图每n
分钟启动和停止一个nodejs应用。这是我到目前为止的内容:
node index.js
pause
我认为,执行此操作的方法是使用for
循环并等待n
分钟,然后停止该应用程序。问题是,如何通过批处理停止nodejs应用?
我尝试过:
node index.js
sleep 30 //sleeps for 30 seconds
node index.js
sleep 30
问题是,它永远不会进入睡眠状态30秒,因为我的node js应用程序永远不会结束,因此它不会进入下一行。无论如何都可以停止程序,然后继续处理批处理文件。
我正在谈论.bat文件。
答案 0 :(得分:1)
如果您想强制重新运行index.js
中的所有内容,则可以尝试使用bot.js
(或您想要的任何名称)child_process.exec:
const { exec } = require('child_process');
const loop = () => exec('node index.js', (error, stdout, stderr) => {
if (error) {
console.error(`exec error: ${error}`);
return;
}
console.log(`stdout: ${stdout}`);
console.log(`stderr: ${stderr}`);
});
loop();
setInterval(loop, 30000);
如果您只想在index.js
中运行代码,则可以使用loop
函数来重新运行代码(因为从exec
开始很长)。