【发布时间】:2016-06-08 06:11:16
【问题描述】:
感谢@user2526830 提供代码。基于该代码,我在程序中添加了几行代码,因为我想读取 SSH 命令的输出。下面是我的代码,它在while 行出现错误
StandardOut 尚未重定向或进程尚未开始。
我想要实现的是我想把ls的输出读成一个字符串。
ProcessStartInfo startinfo = new ProcessStartInfo();
startinfo.FileName = @"f:\plink.exe";
startinfo.Arguments = "-ssh abc@x.x.x.x -pw abc123";
Process process = new Process();
process.StartInfo = startinfo;
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardInput = true;
process.Start();
process.StandardInput.WriteLine("ls -ltr /opt/*.tmp");
process.StandardInput.WriteLine("exit");
process.StartInfo.RedirectStandardOutput = true;
while (!process.StandardOutput.EndOfStream)
{
string line = process.StandardOutput.ReadLine();
}
process.WaitForExit();
Console.ReadKey();
【问题讨论】: