从文件运行命令行命令

时间:2018-03-04 12:42:01

标签: node.js

是否有办法将所有控制台语句记录到节点中的文件中。

我最近正在开发一个迷你项目,想要了解如何运行cli命令并将其输出保存到文件中。

对于前: node -v会在终端上输出v9.7.1。我如何从文件中执行它并记下它的输出?我尝试将相同的命令放在JS文件中并运行node test.js,但它返回了以下错误。

/home/kashyap/Documents/Code/testgits/1.js:1
(function (exports, require, module, __filename, __dirname) { node -v
                                                              ^
ReferenceError: node is not defined
    at Object.<anonymous> (/home/kashyap/Documents/Code/testgits/1.js:1:63)
    at Module._compile (module.js:662:30)
    at Object.Module._extensions..js (module.js:673:10)
    at Module.load (module.js:575:32)
    at tryModuleLoad (module.js:515:12)
    at Function.Module._load (module.js:507:3)
    at Function.Module.runMain (module.js:703:10)
    at startup (bootstrap_node.js:193:16)
    at bootstrap_node.js:660:3

如何在文件中运行控制台命令。与编写脚本类似吗?

1 个答案:

答案 0 :(得分:2)

您可以使用child_process模块

const spawn = require('child_process');

spawn.exec('node -v', (err, stdout, stderr) => {
    if (err) {
        return;
    }
    console.log(`stdout: ${stdout}`);
});
  

stdout:v8.9.4