执行bash进程,该进程从c代码执行npm



我正在编写一个c#程序,我想从c#代码中运行(npm-install(和(npm-run-build(。我试过

public static Boolean BuildNpm()
{
Console.WriteLine("start process method?");
var proc = new System.Diagnostics.Process();
proc.StartInfo.WorkingDirectory="../../frontend/";
proc.StartInfo.FileName = "/bin/bash";
proc.Start();
//npm install
//npm run build
//exit
proc.WaitForExit();
Console.WriteLine("Done?");
return (proc.ExitCode == 0) ? true : false;
}

我能够创建一个请求命令的shell,并添加我想要的命令,但我希望这些命令自动出现在程序中。

为什么需要运行bash来运行命令?直接从程序中运行npm难道不应该工作吗?

public static Boolean BuildNpm()
{
Console.WriteLine("start process method?");
var proc = new System.Diagnostics.Process();
proc.StartInfo.WorkingDirectory="../../frontend/";
proc.StartInfo.FileName = "/path/to/npm";
proc.StartInfo.Arguments = "install";
proc.Start();
proc.WaitForExit();
proc.StartInfo.Arguments = "run build";
Console.WriteLine("Done?");
return (proc.ExitCode == 0) ? true : false;
}

如果npm的任何一个执行失败,也应该添加一些错误处理。

最新更新