Node.js使用child_process调用系统命令示例


首先我们在D盘根目录下新建一个test.bat文件,他的内容如下:

echo %date%%time% >> D:/test.txt

他的目的很简单,每次调用这个bat文件,都会在D:/test.txt中追加一条当前日期和时间。
然后我们安装依赖包:

npm install child_process

然后我们写一个node.js程序调用这个命令:

var fs = require('fs');
var { exec } = require('child_process');

var timed_task = {};

timed_task.runProcedure = function () {
    fs.writeFileSync(`${__dirname}/../public/info.txt`, 'busy');
    var options = {
        encoding: 'utf8',
        timeout: 0,
        maxBuffer: 200 * 1024,
        killSignal: 'SIGTERM',
        cwd: null,
        env: null
    };
    var cmdS = 'D:/test.bat';
    exec(cmdS, options, (error, stdout, stderr)=>{
        var stat;
        if (error) {
            console.error(error);
            fs.writeFileSync(`${__dirname}/../public/info.txt`, 'error');
        }
        else {
            console.log('ok!');
            fs.writeFileSync(`${__dirname}/../public/info.txt`, 'free');
        }
        
    });
}

module.exports = timed_task;

timed_task.runProcedure();

运行后发现已调用了该脚本。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM