Come si elencano tutti i processi sulla riga di comando in Windows?


Risposte:


373

Lavorare con cmd.exe:

tasklist

Se hai Powershell :

get-process

Tramite WMI:

processo wmic

(puoi anche interrogare macchine remote con /node:ComputerOrIP, e ci sono MOLTI altri modi per personalizzare questo comando: link )


34
potresti voler reindirizzarlo negli appunti e incollarlo nel blocco note: c: \> tasklist | clip

3
In particolare, potresti provare> tasklist / FI "SERVICES eq wampapache"
RiggsFolly

Se elenco le attività con l'elenco delle attività, come posso quindi terminare un'attività dal prompt dei comandi?
Kyle Delaney,

Se usi Powershell, è davvero conveniente collegarlo a Out-Gridview, in questo modo: "Get-Process | Out-GridView"
Charles Burge,

1
O semplicemente reindirizzalo direttamente in un file di testo: C:> tasklist> C: \ myProcesses.txt
P.Brian.Mackey,

85

Esiste uno strumento chiamato Strumento da riga di comando di Strumentazione gestione Windows (wmic.exe) .

Puoi chiamare wmic process listper vedere tutti i processi.


4
Ho trovato questo thread mentre cercavo di risolvere lo stesso problema e volevo sottolineare che wmic ha funzionato bene per me. Con wmic puoi scegliere l'output più appropriato per l'analisi, usando / format: csv o / format: rawout. Attenzione: wmic non implementa correttamente il formato CSV (i campi non sono mai citati, anche se contengono virgolette o virgole incorporate), quindi sono stato costretto a usare xml.
JimN,

1
@JimN - / format: rawxml e non / format: rawout
Joe

Puoi filtrare qualsiasi processo usando wmic?
Kiquenet,

Se è necessario trovare la riga di comando che ha avviato il processo, questa è la risposta
Shane Gannon,

29

Volevo menzionare che WMIC (pam's entry) può fare molto di più. Dai un'occhiata alla mia pagina dei frammenti di WMIC, che è un cheatsheet che mostra molti dei modi più comuni di usare WMIC (con l'output di esempio mostrato qui )


19
  1. Elenco delle attività

  2. WMIC /OUTPUT:C:\ProcessList.txt PROCESS get Caption, Commandline, Processid

o

 WMIC /OUTPUT:C:\ProcessList.txt path win32_process get Caption,Processid,Commandline

15

Ho provato su Windows 7. Il comando è: TASKLIST /FI "IMAGENAME eq application_name"

Per esempio: c:\>TASKLIST /FI "IMAGENAME eq notepad.exe"

Per mostrare tutto il processo con i dettagli della porta:

c:\> TASKLIST

Anche per uccidere il processo è possibile utilizzare c:\> pskill or tskill processname

Per esempio: c:\> tskill notepad


1
TASKLIST /FI "IMAGENAME eq explorer.exe"restituisce un'intera riga come output. Esiste un modo per ottenere solo il PID stesso?
Pacerier,

per un comando più umano-memorabile, taskkillè sinonimo ditskill
Mushroom Man

Su 8.1, non esiste tskillsolo taskkilled pskillè fornito da SysInternals ma non da Windows. (@KiritoBepsibane)
dave_thompson_085



2

Se usi Windows XP, prova a usare il comando 'tasklist'. L'ho provato con Vista e sembra funzionare anche.


1

Utilizzare questo comando per visualizzare tutti i processi nel computer Windows

tasklist / svc


1
Puoi filtrare qualsiasi processo usando la lista delle attività con pipe o in un altro modo?
Kiquenet,

@Kiquenet Sì, è possibile: tasklist|findstr "firefox.exe". Se restituisce un valore errorlevel1, il processo è stato trovato nell'elenco dei processi.
sig.

@mrt: findstrnon ha bisogno di virgolette intorno all'ago a meno che non contenga spazio o carattere speciale come & sebbene lo findfaccia, ed entrambi restituiscono 1 per NON trovato (0 per trovato).
dave_thompson_085

@ dave_thompson_085 Certo che hai ragione, ma secondo me è una buona abitudine mettere le stringhe tra virgolette. Questo mi impedisce di lasciarli fuori per caso quando sono necessari. Inoltre, semplifica la lettura dell'affermazione poiché è immediatamente ovvio quale sia il termine di ricerca.
sig.

1

Per terminare un processo utilizzare:

TASKKILL /F /IM processname.exe

Per esempio:

TASKKILL /F /IM firefox.exe

Questa non è una buona risposta. La domanda è come elencare i processi, non come ucciderli.
Rikki Gibson,

0

Ho avuto il seguente problema su Windows 2003 SP2: Elenco attività non ha restituito alcun output su stdout o stderr, quando chiamato da un processo avviato come servizio di Windows (anche in Account locale). Elenco attività restituito con il codice (non documentato) 128.

Chiamato dallo stesso programma avviato come un normale processo (non come servizio), è stato eseguito.

Nessun aiuto per cambiarlo. Non sono riuscito a trovare alcun motivo o soluzione ma ho usato "pslist / accepteula" di sysinternal invece di esso.

Stesso problema con taskkill: ho dovuto sostituirlo con pskill.


0

Ho fatto un msproject (codice sorgente c), l'archivio è disponibile su: lsproc.zip project archive

ed exe file: binario lsproc.exe

questo è un output dello strumento da riga di 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



--------------

file non trovato, signore
Kiquenet,

0

aprire il prompt dei comandi di Windows

C:\>tasklist                       // list all the tasks


C:\>Taskkill /IM firefox.exe /F     // Kill task by name

o

C:\>Taskkill /PID 26356 /F           // kill task by PId

-1

Ciao se vuoi elencare gli ID di processo in esecuzione su un computer Windows, apri una cmdschermata e digita:

netstat -aon | more

utilizzare il Entertasto per scorrere.


Ciò fornisce solo processi che accedono alla rete, che NON è tutti i processi.
dave_thompson_085
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.