我正在尝试使用SshNet(Renci)在我的C#应用程序中创建一个ssh客户端会话。我似乎无法理解如何让它工作。本质上,我可以获得与服务器的连接,但是当我尝试提交命令时,我没有从服务器返回任何内容。我正在使用SshClient和SshShell来执行通信。我做错了什么?
ssh.Connect();
var input = new MemoryStream();
var sr = new StreamWriter(input);
var output = Console.OpenStandardOutput();
IDictionary<Renci.SshNet.Common.TerminalModes, uint> termkvp = new Dictionary<Renci.SshNet.Common.TerminalModes, uint>();
termkvp.Add(Renci.SshNet.Common.TerminalModes.ECHO, 53);
var shell = ssh.CreateShell(input, output, output, "xterm", 80, 24, 800, 600, termkvp, 1024);
shell.Stopped += delegate
{
Console.WriteLine("\nDisconnected...");
};
shell.Start();
while (true)
{
string command = Console.ReadLine();
if (command == "exit") break;
sr.WriteLine(command);
sr.Flush();
Thread.Sleep(1000 * 1);
}
shell.Stop();