在 Windows 的命令行中显示正在运行的进程的 EXE 文件路径

Jer*_*ers 37 windows

如何从 Windows 的命令行显示每个正在运行的进程的完整 EXE 文件路径?

我试过tasklistpslist,但它们没有显示完整路径:

tasklist /FI "ImageName eq Spring.Tests.exe" /v /fo List
Run Code Online (Sandbox Code Playgroud)

给出:

Image Name:   Spring.Tests.exe
PID:          3956
Session Name: Console
Session#:     1
Mem Usage:    9,772 K
Status:       Running
User Name:    W81ENTX64DELPHI\Developer
CPU Time:     0:00:01
Window Title: Spring
Run Code Online (Sandbox Code Playgroud)

pslist Spring.Tests -x
Run Code Online (Sandbox Code Playgroud)

给出:

Name                Pid      VM      WS    Priv Priv Pk   Faults   NonP Page
Spring.Tests       3956   83472    9772    5320    5692     5037     11  157
 Tid Pri    Cswtch            State     User Time   Kernel Time   Elapsed Time
1488  10     11018     Wait:UserReq  0:00:00.906   0:00:01.046    0:53:06.977
Run Code Online (Sandbox Code Playgroud)

既然Spring.Tests.exe可以在各个目录下,我想知道执行的是哪个。

bar*_*lop 36

除了您给出的行之外,这里还有一堆行(除了第二行)可用于列出路径:

PS C:\> gwmi win32_process | select Handle, CommandLine | format-list
PS C:\> gwmi win32_process | select name
PS C:\> gwmi win32_process | select CommandLine
C:\>wmic process get ProcessID,ExecutablePath
C:\>wmic process where "name='mysqld.exe'" get ProcessID, ExecutablePath
C:\>wmic process where "name='mysqld.exe'" get ProcessID, ExecutablePath /FORMAT:LIST
Run Code Online (Sandbox Code Playgroud)


Jer*_*ers 13

PowerShell来救援。

首先,我使用Get-Member来查看Get-Process可以返回什么:

PowerShell Get-Process ^| Get-Member
Run Code Online (Sandbox Code Playgroud)

然后我过滤了 Get-Process 中的 Path以找出Spring.Tests正在运行的进程:

PowerShell Get-Process Spring.Tests ^| Format-List Path
Run Code Online (Sandbox Code Playgroud)

导致:

Path : C:\Users\Developer\Versioned\Spring4D\Tests\Bin\DelphiXE\Spring.Tests.exe
Run Code Online (Sandbox Code Playgroud)

这正是我想要的信息。


小智 10

通过管道将 PowerShellGet-Process导入Select-Object.

Notepad++ 的示例命令:

Get-Process notepad++ | Select-Object Path
Run Code Online (Sandbox Code Playgroud)

输出:

Path
----
D:\Notepad++\notepad++.exe
Run Code Online (Sandbox Code Playgroud)

  • 要直接获取输出,`(Get-Process notepad++).Path`(可能存储在变量中)。 (2认同)