最近写了一些脚本,
期望这些脚本在某些特定的时间去自动执行,(定时任务)
定时任务参考文章:nodejs定时任务
在任务执行完之后,除了退出程序以外,还想要自动关机。
于是找到了node可以直接关机和重启的方法。
其实不用node也可以直接
按下组合键“win R”,电脑会自动弹出来一个“运行”的对话框。
在对话框里面填写关机的时间,例如说“Shutdown -s -t 600”。温馨提醒,600代表的是10分钟,代表十分钟之后 自动关机 。
如果您想要在20分钟之后关机,则需要输入“Shutdown -s -t 1200”。我们应该根据设定时间的不同,填写不同的数字。
取消定时任务的话 可以通过 “shutdown -a”
但是这样其实没有办法自动检测我们的脚本任务啥时候结束,
需要写到node.js中 形成一个任务队列,这样就比较智能了。
下面是代码:
操作系统:w10
node版本:12.18.2
关机
代码语言:javascript复制const { exec } = require('child_process');
function shutdownWindow() {
let command = exec('shutdown -s -t 00', function(err, stdout, stderr) {
if(err || stderr) {
console.log("shutdown failed" err stderr);
}
});
command.stdin.end();
command.on('close', function(code) {
console.log("shutdown", code);
});
}
重启
代码语言:javascript复制const { exec } = require('child_process');
function rebootWindow() {
let command = exec('reboot', function(err, stdout, stderr) {
if(err || stderr) {
console.log("reboot failed" err stderr);
}
});
command.stdin.end();
command.on('close', function(code) {
console.log("reboot", code);
});
}