gpt4 book ai didi

node.js - 使用 Node.js 自动将文本写入控制台

转载 作者:搜寻专家 更新时间:2023-11-01 00:18:16 25 4
gpt4 key购买 nike

我需要使用 SSH 和 Node.js 脚本克隆 GitHub 存储库:

var exec = require('child_process').exec;

exec('git clone git@github.com:jquery/jquery.git',
function (error, stdout, stderr) {
console.log('stdout: ' + stdout);
console.log('stderr: ' + stderr);
if (error !== null) {
console.log('exec error: ' + error);
}
}
);

如果 github.com 不在 known_hosts 文件中,SSH 强制在问题“Are you sure you want to continue connecting (yes/no)?”上输入“yes”。

如何自动输入此文本?

附言我知道 StrictHostKeyChecking=no,但我需要在不更改 SSH 配置的情况下克隆存储库。

最佳答案

当然,这是完全可能的。当你调用child_process.exec时,它实际上返回了一个ChildProcess对象。它包含一个 .stdin 对象,它是一个 Writable Stream 的实现,您可以通过管道将其写入/写入。关于 ChildProcess.stdin 的文档, 也在 Writable Stream .

以下是一些与您的问题相关的示例代码:

var exec = require('child_process').exec;

var cmd = exec('git clone git@github.com:jquery/jquery.git', function (error, stdout, stderr) {
// ...
});

cmd.stdin.write("yes");

关于node.js - 使用 Node.js 自动将文本写入控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25694884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com