2012-05-29 153 views
2

我想使用powershell來獲取在遠程計算機上運行的進程的啓動時間。 在我的本地計算機上,我通過簡單地使用get-process $processname | select StartTime來獲取它。使用powershell在遠程計算機上運行的進程的啓動時間

我試過使用get-process $processname -computername $server1 | select StartTime但這沒有任何回報。

請建議任何更好的方法。

回答

7

使用WMI。 powershell.exe過程中該代碼返回開始時間:如果$ a包含多個進程

$a = gwmi win32_process -computername $server1| ? { $_.name -eq "powershell.exe" } 

$a | % { $_.ConvertToDateTime($_.CreationDate)} 
+1

這可能無法正常工作。我建議你管到foreach-object –

+0

@ShayLevy是啊!好點謝伊!修復答案。謝謝 –

+0

確定那很酷..現在我想以我想要的方式格式化它像2012年5月15日12:35:16 PM ..但沒有格式機制工作,我用get-date命令..可以你幫助我呢? –

3
PS> $StartTime= @{n='StartTime';e={$_.ConvertToDateTime($_.CreationDate)}} 
PS> gwmi win32_process -cn $server1 -filter "Name='$processname' AND CreationDate IS NOT NULL" | select Name,$StartTime 
+0

更好的答案,恕我直言,作爲它更容易添加其他字段。 – mbourgon

相關問題