我正在尝试执行一个包含超时的bat脚本。我异步地从节点执行bat文件,但是节点似乎完全忽略了CMD内部的超时。
JS文件:
const fs = require("fs")
const util = require("util")
const exec = util.promisify(require("child_process").exec)
async function executeBat(){
await exec("C:/PktmonScripts/getPhonesMacScript.bat")
do things
}BAT档案:
timeout /T 40 /NOBREAK > nul当我在cmd上执行脚本时超时工作。
发布于 2022-08-09 10:58:50
如果bat文件正在等待此操作,则请正确检查windows命令,然后程序也将等待完成您需要在结束时调用该函数的操作。
const fs = require("fs")
const util = require("util")
const exec = util.promisify(require("child_process").exec)
async function executeBat(){
await exec("C:/PktmonScripts/getPhonesMacScript.bat")
//I am trying Linux file here but works same as windows
//await exec("./getPhonesMacScript.sh")
}
executeBat()// -------need to call function at end在带执行权限的sh文件中
sleep 30它将睡眠30秒,然后程序将退出。
https://stackoverflow.com/questions/73289682
复制相似问题