Respostas:
Trabalhando com cmd.exe:
Se você possui o Powershell :
Via WMI:
processo wmic
(você também pode consultar máquinas remotas /node:ComputerOrIP
e existem muitas outras maneiras de personalizar este comando: link )
Existe uma ferramenta chamada ferramenta de linha de comando da Instrumentação de Gerenciamento do Windows (wmic.exe) .
Você pode ligar wmic process list
para ver todos os processos.
Lista de tarefas
WMIC /OUTPUT:C:\ProcessList.txt PROCESS get Caption, linha de comando, Processid
ou
WMIC /OUTPUT:C:\ProcessList.txt path win32_process get Caption,Processid,Commandline
Eu tentei no Windows 7. O comando é: TASKLIST /FI "IMAGENAME eq application_name"
Por exemplo: c:\>TASKLIST /FI "IMAGENAME eq notepad.exe"
Para mostrar todo o processo com detalhes da porta:
c:\> TASKLIST
Também para matar o processo, você pode usar c:\> pskill or tskill processname
Por exemplo: c:\> tskill notepad
TASKLIST /FI "IMAGENAME eq explorer.exe"
retorna uma linha inteira como saída. Existe alguma maneira de obter apenas o próprio PID?
taskkill
é sinônimo detskill
tskill
apenas taskkill
e pskill
é fornecido pelo SysInternals, mas não pelo Windows. (@KiritoBepsibane)
lista de tarefas ou pslist de sysinternals. Além disso, o processo get é incrível no PowerShell .
Se você usa o Powershell , ele possui o comando 'ps' (é alias ao Get-Process)
Use este comando para ver todos os processos na máquina Windows
tasklist / svc
tasklist|findstr "firefox.exe"
. Se isso retornar um errorlevel
de 1, o processo foi encontrado na lista de processos.
findstr
não precisa de aspas ao redor da agulha, a menos que contenha espaço ou caractere especial como & embora find
, e ambos retornem 1 por NÃO encontrado (0 por encontrado).
Para matar um processo, use:
TASKKILL /F /IM processname.exe
Por exemplo:
TASKKILL /F /IM firefox.exe
Eu tive o seguinte problema no Windows 2003 SP2: A lista de tarefas não retornou nenhuma saída no stdout ou stderr, quando chamada de um processo iniciado como serviço do Windows (mesmo na conta local). Lista de tarefas retornada com o código (não documentado) 128.
Chamado a partir do mesmo programa iniciado como um processo normal (não como serviço), ele foi executado.
Não há ajuda para mudar isso. Não consegui encontrar nenhum motivo ou solução, mas use "pslist / accepteula" de sysinternal em vez dele.
O mesmo problema com o skillkill: tive que substituí-lo pelo pskill.
Eu fiz um msproject (código-fonte c), o archive está disponível em: lsproc.zip archive do projeto
e arquivo exe: lsproc.exe binário
esta é uma saída da ferramenta de linha de comando:
lsproc
Thierry Bremard
t.bremard@gmail.com
list binary files and driver with their local path on disks
most of code retreived from msdn site
--------------------
Process ID: 0
--------------------
Process ID: 4
<unknown> (PID: 4)
<unknown>
PageFaultCount : 0x00002E4B
PeakWorkingSetSize : 0x00419000
WorkingSetSize (Mem usage) : 0x0003A000 (232 ko)
QuotaPeakPagedPoolUsage : 0x00000000
QuotaPagedPoolUsage : 0x00000000
QuotaPeakNonPagedPoolUsage : 0x00000000
QuotaNonPagedPoolUsage : 0x00000000
PagefileUsage : 0x00000000
PeakPagefileUsage : 0x00000000
--------------------
Process ID: 764
smss.exe (PID: 764)
\SystemRoot\System32\smss.exe
PageFaultCount : 0x000000D6
PeakWorkingSetSize : 0x00082000
WorkingSetSize (Mem usage) : 0x0006C000 (432 ko)
QuotaPeakPagedPoolUsage : 0x00006C34
QuotaPagedPoolUsage : 0x00001854
QuotaPeakNonPagedPoolUsage : 0x000004D8
QuotaNonPagedPoolUsage : 0x00000280
PagefileUsage : 0x0002C000
PeakPagefileUsage : 0x00030000
--------------------
Process ID: 816
--------------------
Process ID: 844
winlogon.exe (PID: 844)
\??\C:\WINDOWS\system32\winlogon.exe
PageFaultCount : 0x0000261D
PeakWorkingSetSize : 0x00B58000
WorkingSetSize (Mem usage) : 0x0029B000 (2668 ko)
QuotaPeakPagedPoolUsage : 0x0001B054
QuotaPagedPoolUsage : 0x000185A4
QuotaPeakNonPagedPoolUsage : 0x0000C988
QuotaNonPagedPoolUsage : 0x0000B6A0
PagefileUsage : 0x005EC000
PeakPagefileUsage : 0x006C6000
--------------------
...
PeakPagefileUsage : 0x03277000
--------------------
Process ID: 2712
lsproc.exe (PID: 2712)
C:\Documents and Settings\LoginX\Bureau\lsproc.exe
PageFaultCount : 0x000000EC
PeakWorkingSetSize : 0x000F1000
WorkingSetSize (Mem usage) : 0x000E4000 (912 ko)
QuotaPeakPagedPoolUsage : 0x000032B4
QuotaPagedPoolUsage : 0x000032B4
QuotaPeakNonPagedPoolUsage : 0x00000400
QuotaNonPagedPoolUsage : 0x00000398
PagefileUsage : 0x00042000
PeakPagefileUsage : 0x0005C000
There are 131 drivers:
--------------------
1: ntkrnlpa.exe
\WINDOWS\system32\ntkrnlpa.exe
--------------------
2: hal.dll
\WINDOWS\system32\hal.dll
--------------------
3: KDCOM.DLL
\WINDOWS\system32\KDCOM.DLL
--------------------
4: BOOTVID.dll
\WINDOWS\system32\BOOTVID.dll
...
--------------------
129: HTTP.sys
\SystemRoot\System32\Drivers\HTTP.sys
--------------------
130: hiber_WMILIB.SYS
\SystemRoot\System32\Drivers\hiber_WMILIB.SYS
--------------------
131: ntdll.dll
\WINDOWS\system32\ntdll.dll
--------------
Olá, se você deseja listar os IDs de processo em execução em uma máquina Windows, abra uma cmd
tela e digite:
netstat -aon | more
use a Entertecla para rolar.