如何创建SSH克隆?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何创建SSH克隆?相关的知识,希望对你有一定的参考价值。

我试图模仿进程内的进程(对于我正在制作的ssh克隆)。它有效,但与cmd.exe本身(see picture)相比并不是很好。正如您在图片中看到的那样,模拟过程回应命令(箭头指向),有时拒绝打印任何内容(带圆圈的正确响应)。

var startInfo   = new ProcessStartInfo("cmd") {
CreateNoWindow  = true,
UseShellExecute = false,
RedirectStandardError   = true,
RedirectStandardInput   = true,
RedirectStandardOutput  = true
};
var shell = new Process() {
    StartInfo = startInfo
};

new Thread(() => {
    char[] buffer = new char[512];
    int read;
    while(true) {
        if((read = shell.StandardOutput.Read(buffer, 0, 512)) > 0) {
            Console.Out.Write(buffer, 0, read);
    }
}).Start();
while(true) {
    shell.StandardInput.WriteLine(Console.ReadLine());
}
shell.WaitForExit();

我究竟做错了什么?

编辑:我试过调整代码页(参见here

答案

问题解决了:

  • 省略的错误消息被写入标准错误流,我没有阅读。
  • “echoed”命令只是显示其输入的shell;例如,如果我写“type /?”,shell将显示“... Debug> type /?”,从标准输出中读取并回显。

以上是关于如何创建SSH克隆?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 GitLab 克隆 git 存储库

如何在多个页面使用同一个HTML片段

通过 SSH 创建 Git 存储库并将其克隆到本地

window下 git 克隆文件时 要先创建ssh key吗

GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段

GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段