使用 powershell 识别进程 ID、名称和用于启动的参数

使用 powershell 识别进程 ID、名称和用于启动的参数

我的问题:

我需要识别正在运行的特定进程的进程 ID。我的问题是,我通过 cscript.exe 运行了很多进程,因此识别大量“cscript.exe”进程的 ID 没什么用。我需要查看 ID 和传递给 cscript 的参数,以便更好地管理它们。

我目前所做的:

我使用以下内容来识别我的 cscript.exe 进程的启动时间和 ID:

Get-Process -Name cscript -IncludeUsername |select starttime, Id, UserName, ProcessName

对我来说,这种方法很管用,因为在这种情况下,任务很少,而且开始时间非常具体。但现在我正在运行几个任务,开始时间也差不多,所以我需要改进自己,才能正确识别这些任务。

在搜索用于启动 cscript.exe 进程的参数时,我了解了Get-WmiObject并且目前正在以这种方式使用它:

Get-WmiObject Win32_Process -Filter "name = 'cscript.exe'" | Select-Object CommandLine| format-list

这很好,我能够看到 cscript.exe 以及传递给它的参数。但是,我仍然需要进程 ID。

我试图添加IDSelect-Object上面的命令,但结果却返回一个空字段CommandLine

我的问题:

我不太熟悉 PowerShell。话虽如此,我正在寻找帮助来结合这两个系统查询。我可以使用 PowerShell 做什么来返回进程名称、参数和 ID?如果可能的话,最好能看到其中包含的开始时间,但这并不像粗体列出的属性那么重要。

答案1

当然,我在放弃并询问之后很快就找到了答案。

由于对 PowerShell 不太熟悉,我放弃了,CommandLine只是Select-Object CommandLine想看看我会得到什么,结果我得到了一切。这包括进程 ID。如果我尝试ID,我应该尝试ProcessId。这就是问题所在。

所以,最终的解决方案是:

Get-WmiObject Win32_Process -Filter "name = 'cscript.exe'" | Select-Object CommandLine, ProcessId| format-list

相关内容