2017-09-14 17 views
-2

最近我正在用c#.net核心在ubuntu linux主机上运行一些应用程序,并想知道是否有某种方法可以访问linux终端命令的内容?具体搜索是否有可能用.net core c#做ps -aux?

ps -aux 

在这种情况下。 谢谢。

编辑:由于这个问题出于某种原因收到了投票,stackoverflow算法决定限制我发布的问题,它说我应该改善我目前的问题。 不太清楚这是什么意思,在这种特殊情况下,但我想加上一个问题,即我需要这些信息才能将.net core作为脚本语言使用,并监视一些远程运行的进程,过程由于某种原因而关闭。我找到了更好的方法来做到这一点,但仍然可以回答一些人。

+0

'Process.GetProcesses();'? –

+0

您可以将'ps -aux'的输出传送到您的程序中。这更符合Unix的哲学。 – Romoku

+0

@ L.B谢谢!其实现在它工作正常!请将其作为回答发布 – marto

回答

1

,而不是启动外部流程和阅读它们的输出,你可以使用Process.GetProcesses()

如果你真的要使用一些外部进程(写入到控制台,像ls | myapp),可以使用标准输入阅读文字

例:

var input = new StreamReader(Console.OpenStandardInput()).ReadToEnd(); 

参见:Process.Start

相关问题