如何在C#中将cmd.exe输出作为字符串?

时间:2017-05-29 09:04:10

标签: c# string visual-studio-2015 cmd

我试图通过c#代码获取cmd.exe中传递参数的输出。但是当执行代码string outw = cmd.StandardOutput.ReadToEnd().ToString();需要花费越来越多的时间时。在这里,我的命令提示符参数完美无缺。

这是我的代码

        Process cmd = new Process();
        cmd.StartInfo.FileName = "cmd.exe";
        cmd.StartInfo.RedirectStandardInput = true;
        cmd.StartInfo.RedirectStandardOutput = true;
        cmd.StartInfo.CreateNoWindow = true;
        cmd.StartInfo.UseShellExecute = false;
        cmd.Start();
        cmd.StandardInput.WriteLine("git init && git remote add gitlab https://gitlab.company.com/test2.git && git push gitlab --delete branchname");
        cmd.StandardInput.WriteLine("git remote remove gitlab");
        string outw = cmd.StandardOutput.ReadToEnd().ToString();//Here my code strucks
        cmd.StandardInput.Flush();
        cmd.StandardInput.Close();
        cmd.WaitForExit();

我犯了错误?我等了30多分钟,但我没有得到string outw的输出。我怎样才能将输出测试作为string outw中的字符串?

0 个答案:

没有答案