gpt4 book ai didi

c# - 如何读取 C# 中的 Putty.exe(但不是 plink.exe)输出?

转载 作者:太空宇宙 更新时间:2023-11-03 11:00:02 34 4
gpt4 key购买 nike

我想知道如何从 putty.exe 控制台窗口读取输出。

关于如何获取 plink.exe/cmd.exe 的输出(以及如何输入)有很多答案,但没有一个适用于 putty.exe。

仅供引用,这就是我现在拥有的;将字符串 'putty.exe' 更改为 'cmd.exe' 可以正常工作:

            var process = new Process();
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardInput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.UseShellExecute = false;
process.StartInfo.FileName = "putty.exe";
process.OutputDataReceived +=
(s, e) =>
{
Console.WriteLine(e.Data);
switch (e.Data)
{
case "test1":
{
process.StandardInput.WriteLine("echo test2");
}
break;

case "test2":
{
process.StandardInput.WriteLine("exit");
}
break;
}
};

if (process.Start())
{
process.BeginErrorReadLine();
process.BeginOutputReadLine();
process.StandardInput.WriteLine("echo test1");
process.WaitForExit();
}

编辑:这段代码的目的是自动处理登录过程:提供用户名/密码后,输入“sudo”并输入相应的审核消息。我需要一种方法来捕获 putty.exe 的输出,以便我可以向此终端输入文本。

最佳答案

plink.exe 的全部意义在于为 PuTTY 提供命令行界面。这就是您应该使用的。

关于c# - 如何读取 C# 中的 Putty.exe(但不是 plink.exe)输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18056042/

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