Advertisement
Guest User

Untitled

a guest
Jan 10th, 2014
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 0.83 KB | None | 0 0
  1.     public static void Run(string command)
  2.     {
  3.         using (var p = new System.Diagnostics.Process()) {
  4.             p.StartInfo.FileName = "/bin/sh";
  5.             // same as g_escape_shell
  6.             var args = new System.Text.StringBuilder();
  7.             args.Append(@"-c '");
  8.             foreach (var c in command) {
  9.                 if (c == '\'')
  10.                     args.Append(@"'\''");
  11.                 else
  12.                     args.Append(c);
  13.             }
  14.             args.Append(@"'");
  15.             p.StartInfo.Arguments = args.ToString();
  16.             p.StartInfo.UseShellExecute = false;
  17.             p.Start();
  18.             p.WaitForExit();
  19.             if (p.ExitCode != 0)
  20.                 throw new Exception(String.Format("Command failed (exit code = {0}): {1} {2}", p.ExitCode, command, args));
  21.         }
  22.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement