我在树莓派工作,节点版本是“node-v0.10.28-linux-arm-pi”。我已经运行了下面的代码。
'使用严格' var util = require('util'); var config = require('./config.js'); var fs = 需要('fs'); var pidInfo = util.format('进程 id:%d', process.pid); util.log(pidInfo); 进程.title = pidInfo; process.on('退出', function () { var path = '/home/pi/test/message_1.txt'; fs.writeFileSync(path, new Date().toString()); }); process.on('SIGTERM', function () { var path = '/home/pi/test/message.txt'; fs.writeFileSync(path, new Date().toString()); process.exit(0); }); //var exec = require('child_process').exec; //exec(util.format('sudo shutdown -h %s', '18:25'), function (err) { //如果(错误) //console.log(err); //}); process.stdin.resume();
当我调用linux命令“kill process id”来杀死进程时,会触发事件SIGTERM并退出。但是当它运行代码“exec(util.format('sudo shutdown -h......”)时,Raspberry pi 将直接关闭,我无法捕获事件 SIGTERM 并退出。我不知道为什么。可能可以你帮帮我好吗?谢谢。