2009-12-30 59 views

回答

0

你需要部署簡單的HTTP服務器與打印到你需要(即環境變量等)輸出流的信息助手腳本。 接下來,您必須從遠程機器調用該腳本,並解析結果。

或者,在沒有服務器的情況下,將計劃任務添加到遠程計算機,每天要寫一次所需信息到某個已知文件(我的意思是以固定路徑文件)。這很簡單,但是您會看到延遲的信息更改。

+0

@UncleMiF, 謝謝!你的第二個建議是我計劃做的事情,如果沒有其他解決辦法:) – 2009-12-31 10:56:32

2

您的解決方案是否需要純Ruby?如果沒有,您可以使用PsExec命令。下面將輸出上remote環境變量(當前用戶):

psexec \\remote cmd /C set 

這通過遠程執行cmd並通過它的命令set運行。

以下Ruby代碼將運行PSEXEC並返回遠程環境變量的哈希:

Hash[*`psexec \\\\remote cmd /C set`.split("\n"). 
    collect {|i| i.split('=', 2)}.flatten] 
+0

沒有必要啓動一個遠程'cmd'實例。例如,PowerShell可以很好地處理環境變量:它們通過'Env'提供程序支持,這意味着它們顯示爲名爲'Env:'的虛擬「驅動器」,就像註冊表一樣。如果你想列出所有的環境變量,你可以使用'Get-ChildItem Env:'(或其別名'dir Env:'或'ls Env:')。如果你想訪問一個特定的環境變量,你可以使用'Get-Content Env:\ PROGRAMFILES'(或'cat'或'type'),就像使用其他文件或變量一樣。您也可以使用簡寫'$ Env:PROGRAMFILES'語法。 – 2009-12-31 00:33:00

+0

謝謝菲爾。我會試試這個,讓你知道。 – 2009-12-31 10:54:12