我正在使用以下命令来获取Windows进程的开始时间。这是为了让进程的运行时间在运行时间过长时终止。
$ProcessStartTime =(Get-Process $WinProcess -computer $computer).StartTime
(不工作)
上面的代码没有从远程服务器返回Start Time值(它可以访问其他进程信息)。但它使用以下命令获取本地进程的值。
$ProcessStartTime =(Get-Process $WinProcess).StartTime
(工作)
有人可以帮助我。
答案 0 :(得分:1)
你可以使用wmi完成这项工作:
gwmi win32_process -computername $computer|
? { $_.name -eq "powershell.exe" } |
% { $_.ConvertToDateTime( $_.CreationDate )}
答案 1 :(得分:0)
我的结果与您相同,但您可以在远程计算机上创建新会话,然后使用invoke-command运行脚本:
$sess=new-pssession $computer
$ProcessStartTime =invoke-command -session $sess -ScriptBlock{ (Get-Process $WinProcess).StartTime}