2017-09-14 3 views
-2

Récemment, j'ai lancé des applications sur un hôte linux ubuntu avec C# .net core et je me demandais s'il y avait un moyen d'atteindre le contenu d'une commande linux terminal? Spécifiquement chercher leEst-il possible de faire ps -aux avec .net core C#?

ps -aux 

dans ce cas. Merci. Edit: parce que cette question pour une raison quelconque a reçu des votes, l'algorithme de stackoverflow a décidé de me restreindre de poster des questions et il dit que je devrais améliorer mes actuels. Je ne sais pas trop ce que cela signifie dans ce cas particulier mais je voulais ajouter à la question que j'avais besoin de cette information pour utiliser C# avec .net comme langage de script et surveiller certains processus à distance et envoyer des alarmes si un le processus est en panne pour une raison quelconque. J'ai trouvé de meilleures façons de le faire mais toujours répondre peut être utile à certaines personnes.

+0

'Process.GetProcesses();'? –

+0

Vous pouvez diriger la sortie de 'ps -aux' dans votre programme. C'est plus en accord avec la philosophie Unix. – Romoku

+0

@ L.B merci! En fait, ça fonctionne bien maintenant! S'il vous plaît postez-le comme une réponse – marto

Répondre

1

Au lieu de commencer les processus externes et lire la sortie d'entre eux, vous pouvez utiliser Process.GetProcesses()

Si vous avez vraiment utiliser des processus externes (écriture à la console, comme ls | myapp) vous pouvez utiliser entrée standard pour lire le texte

Ex:

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

Voir aussi: Process.Start