如何从nodejs中的守护进程生成gpg子进程

How to spawn a gpg child process from a daemon in nodejs?

本文关键字:进程 gpg 子进程 守护 nodejs      更新时间:2023-09-26

如果我正常运行应用程序,我可以生成一个 gpg 子进程并正常解密文件。

/应用.js

var spawn = require('child_process').spawn;
function decrypt() {
    var gpg = spawn('gpg', ['--no-use-agent', '--passphrase', 'My Passphrase', './test.pdf.asc']);
    gpg.on('close', function (code) {
        console.log(code); // code == 0
    });
}
decrypt();

运行应用程序.js作为常规进程,可以解密文件

node app.js 

但是,当我尝试运行该应用程序时.js作为使用 pm2、暴发户等的守护程序......我收到错误代码 (2),无法解密文件运行应用程序.js一个守护程序

pm2 start app.js
这不是

节点.js的问题。它与gnugg工具有关。为了运行 gpg 从代码中调用它或作为 cron 作业,你需要一个标志 '--no-tty'。