2010-05-23 64 views
1

我想知道哪些庫或API在這方面會有用。我的目標是能夠將命令輸入到提示符中,然後指定哪臺計算機(聯網在一起的所有計算機)執行該命令。第二部分是我希望能夠看到該命令執行和計算機上指定的結果。將多臺計算機連接到Java中的一個大腦

例如,如果我輸入「firefox www.google.com,desktop2」我希望能夠看到在該計算機的顯示器上打開的窗口。你明白我想做什麼?任何幫助表示讚賞。

謝謝,莫菲

+1

*?「你明白我嘗試做」 * - 我是這樣認爲的,但我不明白爲什麼你認爲它是做一個明智的做法。也許你一直在觀看太多的SF電影? [順便說 - 這是speffled睡眠:-)] – 2010-05-23 23:19:51

+0

我會問是否適合做這個編程。使用VNC,遠程桌面或基於SSH的X遠遠好於哪個操作系統?特別是在安全性方面。 – Catchwa 2010-05-23 23:22:26

+0

我看了很多科幻電影,但沒有什麼不可能的。另外,我更喜歡口頭禪,:)。嗯,我明白,VNC是更好的,但我不能整合一個人的VNC到一個更大的程序,我也不需要它那麼複雜。 – Gabe 2010-05-23 23:51:32

回答

1

我認爲我這樣做,但不是爲什麼。例如,現有的機制可以做到這一點。如果你有sshd的每個你的「多臺計算機」的運行,你可以簡單地說,從「控制」,運行:

ssh -X [email protected] firefox www.google.com 

,你會使用遠程X轉發火狐回本地桌面(實際上在桌面上執行2)。如果您想了解更多信息,請嘗試man ssh以獲取更多信息並在serverfault上詢問。

如果你正在尋找能夠實現這種想法的東西,那是另外一回事了,我會質疑Java是否是最好的方法(意見有所不同,但它不是「系統語言」)。同樣,現有的解決方案也存在,例如用於Fedora等項目的構建系統(請參閱Koji)。

我的建議是研究大量現有的代碼,只有當這不能解決您的問題,或者如果您想要一個挑戰,寫一些新的東西。

+0

我意識到有這樣做的現有方法,但我正在研究這個特別是一個更大的項目的方式,這是它的一部分,謝謝你,我會在做任務時記住ssh。 :) – Gabe 2010-05-23 23:22:08

0

在Windows上,PSEXEC會做到這一點:

的命令行是

Usage: psexec [\\computer[,computer2[,...] | @file] 
       [-u user [-p psswd]][-n s][-l][-s|-e][-x][-i [session]] 
       [-c [-f|-v]][-w directory][-d][-<priority>][-a n,n,... ] 
       cmd [arguments] 

例如:

psexec \\computer2 -i firefox.exe www.google.com 

將在遠程計算機上執行交互的Firefox。

見 - PSExec, Microsoft PStools

+0

可以把psexec組合成一個更大的java程序嗎?你知道任何在Linux上都一樣嗎? – Gabe 2010-05-24 00:32:19

+0

我建議你在堆棧溢出的其他地方搜索,以瞭解如何在Java中執行shell命令(已經多次回答)。通過SSH進行X轉發(即Ninefingers的答案)是你希望在Linux中完成的(理想情況下,使用證書而不是密碼)。 – Catchwa 2010-05-24 02:49:37

相關問題