1. ホーム
  2. node.js

[解決済み] node.jsでシェルコマンドを実行し、その出力を取得する

2022-04-28 13:54:27

質問

node.jsで、Unix端末のコマンドの出力を取得する方法を見つけたいのですが、どうすればいいですか?何か方法はないでしょうか?

function getCommandOutput(commandString){
    // now how can I implement this function?
    // getCommandOutput("ls") should print the terminal output of the shell command "ls"
}

解決方法は?

これは、私が現在取り組んでいるプロジェクトで使っている方法です。

var exec = require('child_process').exec;
function execute(command, callback){
    exec(command, function(error, stdout, stderr){ callback(stdout); });
};

gitユーザーを取得する例です。

module.exports.getGitUser = function(callback){
    execute("git config --global user.name", function(name){
        execute("git config --global user.email", function(email){
            callback({ name: name.replace("\n", ""), email: email.replace("\n", "") });
        });
    });
};