2012-03-21 141 views
0

我试图从ruby执行Powershell命令来捕获结果并执行其他一些处理。从Ruby执行和外部Powershell命令

var = `powershell Invoke-Command -computername myserver {Get-Eventlog application -newest 200 |  where {$_.Message -match "Found 0 files to refresh"}}` 
puts var 

由于$ _变量在PS和Ruby我得到以下之间共享:

信息:找不到指定的模式(一个或多个)文件。

关于如何完成此任务的任何想法。

回答

0

$_.Message是一个Ruby全局变量?

var = `powershell Invoke-Command -computername myserver {Get-Eventlog application -newest 200 |  where {#{$_.Message} -match "Found 0 files to refresh"}}` 
+0

不,$ _。消息是一个Powershell变量,但ruby认为是一个文件句柄:S – Maverick 2012-03-23 16:54:05