使用PowerShell在远程计算机上运行进程的开始时间

时间:2012-05-29 08:23:59

标签: powershell

我想使用PowerShell获取在远程计算机上运行的进程的开始时间。 在我的本地计算机上,我只需使用get-process $processname | select StartTime即可获得它。

我尝试使用get-process $processname -computername $server1 | select StartTime,但这不会给我任何回报。

请建议任何更好的方式。

2 个答案:

答案 0 :(得分:7)

使用WMI。此代码返回powershell.exe进程的开始时间:

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

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

答案 1 :(得分: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