如何在Linux上用C#启动服务

我想通过Mono使用C#控制台应用程序在我的Linux服务器上启动一项服务。

public static void StartService(string serviceName, int timeoutMilliseconds) { ServiceController service = new ServiceController(serviceName); try { TimeSpan timeout = TimeSpan.FromMilliseconds(timeoutMilliseconds); service.Start(); service.WaitForStatus(ServiceControllerStatus.Running, timeout); } catch { // ... } } 

这会工作吗?

另外,有没有办法通过C#向Linux发送命令,就像你可以在Windows系统上发送命令一样?

我正在尝试使用C#可执行文件启动Linux服务。

你可以通过这个来执行一个命令。

 Process proc = new System.Diagnostics.Process(); proc.StartInfo.FileName = "/bin/bash"; proc.StartInfo.Arguments = "-c 'your command here'"; proc.StartInfo.UseShellExecute = false; proc.StartInfo.RedirectStandardOutput = true; proc.Start();