简体   繁体   中英

C# equivalent to shell_exec

How execute command via shell and return the complete output as a string using C#?

equivalent to shell_exec() of PHP.

Thanks,advanced.

使用Process

The MSDN documentation on Process.StandardOutput documentation shows an example

// Start the child process.
Process p = new Process();
// Redirect the output stream of the child process.
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "Write500Lines.exe";
p.Start();
// Do not wait for the child process to exit before
// reading to the end of its redirected stream.
// p.WaitForExit();
// Read the output stream first and then wait.
string output = p.StandardOutput.ReadToEnd();
p.WaitForExit();

You might like to extract the standard error stream as well.

Look at the Process class Standard Output and Standard Error , and the OutputDataReceived and ErrorDataReceived recieved events.

There is a CodeProject article here , which you may find helpful.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM