如何通过C#在mac os上执行命令

时间:2018-04-13 10:27:00

标签: .net terminal command command-prompt google-chrome-headless

我目前正在通过.net核心应用程序使用无头chrome控件从html生成PDF。为此,我必须通过.net进程运行chrome命令。我可以通过在cmd.exe上运行命令在Windows操作系统中生成PDF。

System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.FileName = "cmd.exe";
startInfo.Arguments = "/C cd C:\\Program Files (x86)\\Google\\Chrome\\Application\\&chrome --headless --disable-gpu --print-to-pdf http://www.google.com/ ;
process.StartInfo = startInfo;
process.Start();

我不确定是否通过.net进程在mac os上触发终端命令。有没有办法在C#应用程序中运行命令提示符命令?如果是这样,我将如何做到上述。

Headless Chrome

1 个答案:

答案 0 :(得分:0)

cmd在这里没用,也不需要。除了使事情更难以阅读或推理之外,它绝对没有任何意义。好吧,并出于某种原因运行另一个过程。为已启动的进程设置working directory,然后启动可执行文件。这更容易。

当然,为了能够在OS X上运行相同的程序,您无法对程序的位置进行硬编码,但至少您不必再担心中间存在shell。