2010-09-13 31 views
0

我想從我的C#.net客戶端讀取Linux服務器中的所有正在運行的進程? 你能告訴我實現這一目標的方式或可能性嗎?如何從C#.net客戶端列出linux運行進程?

我們在同一個域中..我猜沒有防火牆問題,但我無法在服務器上編寫或安裝任何東西。

(我想這讓進程ID保持在Linux機器上運行,當這一過程發生變化的進程ID ..我要在我的客戶端應用程序運行一些邏輯)

+0

通過rsh或ssh從客戶端程序運行_ps_的缺點,我不確定將會有更好或可能的方式來執行此操作。好奇看看是否有其他選擇。 – Joe 2010-09-13 01:57:42

+0

也許我錯過了一些東西,但linux進程是否可以改變它們的ID? – 2010-09-13 01:58:04

+0

@Joe:你爲什麼認爲需要另一種選擇?通過ssh調用'ps'絕對是最便攜的。如果已經安裝了正確的snmp代理程序,則可以將進程列表作爲snmp表獲得,但這不適用於大多數發行版的開箱即用安裝。 – 2010-09-13 02:51:03

回答

3

你需要做的這通過SSH。對於C#,我會看看SharpSSH。運行ps -e | grep,你應該能夠很容易地解析ID號碼。

據我所知,進程ID只在進程重新啓動時纔會改變,但我對此無權。

相關問題