¿Cómo puedo mostrar la ruta completa del archivo EXE de cada proceso en ejecución desde la línea de comandos en Windows?
Intenté tasklist y pslist , pero no muestran la ruta completa:
tasklist /FI "ImageName eq Spring.Tests.exe" /v /fo List
Da:
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
y
pslist Spring.Tests -x
da:
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
puede estar en varios directorios, quiero saber cuál se ejecutó.
Respuestas:
Además de la línea que proporcionó, aquí hay un montón de líneas que (aparte de la segunda) se pueden usar para enumerar rutas:
fuente
name
campo hará que esto se rompa.PowerShell al rescate.
Primero usé Get-Member para ver qué Get-Process podría devolver:
Luego filtré la ruta desde Get-Process para averiguar qué
Spring.Tests
procesos se estaban ejecutando:Resultando en:
que es exactamente la información que quería
fuente
Path
lo mismo que la línea de comando? ¿Qué pasa con los argumentos para el ejecutable? @barlop WMI todavía tiene una serie de características que de otro modo no estarían disponibles en PowerShell.StartInfo
en lugar dePath
sobre la base de stackoverflow.com/questions/1012409/...Instale PowerShell
Get-Process
enSelect-Object
.Comando de ejemplo para Notepad ++:
Salida:
fuente
(Get-Process notepad++).Path
(tal vez para almacenar en una variable).