ine*_*bug 2 ssh console automation node.js
我需要使用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);
}
}
);
Run Code Online (Sandbox Code Playgroud)
如果github.com不在known_hosts文件中,则SSH强制在"您确定要继续连接(是/否)"问题上输入"是"吗?
如何自动输入此文本?
PS我知道StrictHostKeyChecking=no,但我需要克隆存储库而不更改SSH配置.
当然,这完全有可能.当你调用时child_process.exec,它实际上返回一个ChildProcessObject.它包含一个.stdin对象,它是a的实现,Writable Stream可以通过管道传输/写入.有关ChildProcess.stdin的文档,也有关可写流的文档.
以下是与您的问题相关的一些示例代码:
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");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1442 次 |
| 最近记录: |