Mostra o caminho do arquivo EXE dos processos em execução na linha de comando no Windows

19

Como posso mostrar o caminho completo do arquivo EXE de cada processo em execução a partir da linha de comando no Windows?

Eu tentei tasklist e pslist , mas eles não mostram o caminho completo:

tasklist /FI "ImageName eq Spring.Tests.exe" /v /fo List

Dá:

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

e

pslist Spring.Tests -x

dá:

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

Como Spring.Tests.exe pode estar em vários diretórios, quero saber qual deles foi executado.

    
por Jeroen Wiert Pluimers 15.06.2014 / 08:38

3 respostas

9

PowerShell para o resgate.

Primeiro, usei Get-Member para ver o que Get-Process poderia retornar:

PowerShell Get-Process ^| Get-Member

Em seguida, eu filtrei o caminho de Get-Process para descobrir quais Spring.Tests processam estavam em execução:

PowerShell Get-Process Spring.Tests ^| Format-List Path

resultando em:

Path : C:\Users\Developer\Versioned\Spring4D\Tests\Bin\DelphiXE\Spring.Tests.exe

que é exatamente a informação que eu queria.

    
por 15.06.2014 / 10:12
22

Além da linha que você deu, aqui estão algumas linhas que (além da segunda) podem ser usadas para listar caminhos:

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
    
por 15.06.2014 / 21:34
4

Get-Process do PowerShell em Select-Object .

Exemplo de comando para o Notepad ++:

Get-Process notepad++ | Select-Object Path

Saída:

Path
----
D:\Notepad++\notepad++.exe
    
por 10.10.2015 / 14:56

Tags