Comment listez-vous tous les processus sur la ligne de commande sous Windows?

Réponses:

373

Travailler avec cmd.exe:

tasklist

Si vous avez Powershell :

get-process

Via WMI:

processus wmic

(vous pouvez aussi interroger des machines distantes avec /node:ComputerOrIP, et il y a BEAUCOUP d'autres façons de personnaliser cette commande: link )

Facteur Mystique
la source
34
vous voudrez peut-être le diriger vers le presse-papiers, puis le coller dans le bloc-notes: c: \> liste de tâches | Clip
3
Vous pouvez notamment essayer> liste de tâches / FI "SERVICES eq wampapache"
RiggsFolly
Si je liste les tâches avec la liste des tâches, comment puis-je terminer une tâche à partir de l'invite de commande?
Kyle Delaney
Si vous utilisez Powershell, il est très pratique de le diriger vers Out-Gridview, comme ceci: "Get-Process | Out-GridView"
Charles Burge
1
Ou bien dirigez-le directement dans un fichier texte: C:> liste des tâches> C: \ myProcesses.txt
P.Brian.Mackey
85

Il existe un outil appelé outil de ligne de commande Windows Management Instrumentation (wmic.exe) .

Vous pouvez appeler wmic process listpour voir tous les processus.

Paulius Maruška
la source
4
Je trouvais cela tellement fil en essayant de résoudre le même problème, et je voulais souligner que wmic fonctionnait bien pour moi. Avec wmic, vous pouvez choisir la sortie la plus appropriée pour l'analyse, en utilisant / format: csv ou / format: rawout. Attention: wmic n'implémente pas correctement le format csv (les champs ne sont jamais cités, même s'ils contiennent des guillemets ou des guillemets), j'ai donc été obligé d'utiliser xml.
JimN
1
@JimN - / format: rawxml et not / format: rawout
Joe
Pouvez-vous filtrer n'importe quel processus utilisant wmic?
Kiquenet
Si vous avez besoin de trouver la ligne de commande qui a lancé le processus, voici la réponse
Shane Gannon
29

Je voulais mentionner que WMIC (entrée de pam) peut faire beaucoup plus. Jetez un coup d’œil à ma page sur les extraits WMIC, qui est une feuille de cheats illustrant de nombreuses façons courantes d’utiliser WMIC (avec un exemple de sortie) ici

utilisateur4197
la source
19
  1. Liste de tâches

  2. WMIC /OUTPUT:C:\ProcessList.txt PROCESS obtenir la légende, la ligne de commande, le processus

ou

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

la source
15

J'ai essayé sur Windows 7. La commande est la suivante: TASKLIST /FI "IMAGENAME eq application_name"

Par exemple: c:\>TASKLIST /FI "IMAGENAME eq notepad.exe"

Pour afficher tous les processus avec les détails du port:

c:\> TASKLIST

Aussi pour tuer le processus, vous pouvez utiliser c:\> pskill or tskill processname

Par exemple: c:\> tskill notepad


la source
1
TASKLIST /FI "IMAGENAME eq explorer.exe"renvoie une ligne entière en sortie. Est-il possible d'obtenir uniquement le PID lui-même?
Pacerier
pour une commande plus mémorable, taskkillest synonyme detskill
Mushroom Man
Sur 8.1, il n'y a pas tskillque taskkill, et pskillest fourni par SysInternals mais pas Windows. (@KiritoBepsibane)
dave_thompson_085
11

tasklist ou pslist de sysinternals. En outre, le processus de traitement est incroyable de PowerShell .

Hafthor
la source
5

Si vous utilisez Powershell , il dispose de la commande 'ps' (elle est associée à Get-Process)

utilisateur15123
la source
2

Si vous exécutez Windows XP, essayez d’utiliser la commande 'tasklist'. Je l'ai essayé avec Vista et il semble que ça marche aussi.

Marcel
la source
1

Utilisez cette commande pour voir tous les processus dans la machine Windows

liste de tâches / svc

LOKESH
la source
1
Pouvez-vous filtrer n'importe quel processus en utilisant une liste de tâches avec pipe ou d'une autre manière?
Kiquenet
@Kiquenet Oui , vous pouvez: tasklist|findstr "firefox.exe". Si cela retourne un errorleveldes 1, le processus a été trouvé dans la liste des processus.
mercredi
@mrt: findstrn'a pas besoin de guillemets autour de l'aiguille, sauf si elle contient un espace ou un caractère spécial comme & well find, et les deux renvoient 1 pour NON trouvé (0 pour trouvé).
dave_thompson_085
@ dave_thompson_085 Bien sûr, vous avez raison, mais à mon avis, c'est une bonne habitude de mettre des chaînes entre guillemets. Cela m'empêche de les laisser accidentellement au besoin. En outre, cela rend la déclaration plus facile à lire puisqu'il est instantanément évident de savoir quel est le terme recherché.
Mai
1

Pour tuer un processus, utilisez:

TASKKILL /F /IM processname.exe

Par exemple:

TASKKILL /F /IM firefox.exe
Gaffe
la source
Ce n'est pas une bonne réponse. La question est de savoir comment lister les processus, pas comment les tuer.
Rikki Gibson le
0

J'ai eu le problème suivant sur Windows 2003 SP2: Tasklist n'a renvoyé aucune sortie sur stdout ou stderr, lorsqu'elle a été appelée à partir d'un processus démarré en tant que service Windows (même sous Compte local). Liste des tâches renvoyée avec le code (non documenté) 128.

Appelé à partir du même programme démarré en tant que processus normal (pas en tant que service), il s'est exécuté.

Aucune aide pour le changer. Je ne pouvais pas trouver de raison ou de solution mais utiliser "pslist / accepteula" de sysinternal à la place.

Même problème avec taskkill: je devais le remplacer par pskill.

Olivier Faucheux
la source
0

J'ai fait un msproject (code source c), les archives sont disponibles sur: lsproc.zip project archive

et fichier exe: lsproc.exe binary

c'est une sortie de l'outil de ligne de commande:

lsproc 
Thierry Bremard
[email protected]
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



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

la source
Fichier non trouvé, monsieur
Kiquenet
0

ouvrir l'invite de commande Windows

C:\>tasklist                       // list all the tasks


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

ou

C:\>Taskkill /PID 26356 /F           // kill task by PId
espacé
la source
-1

Bonjour, si vous souhaitez répertorier les ID de processus en cours sur une machine Windows, ouvrez un cmdécran et tapez:

netstat -aon | more

utilisez la Entertouche pour faire défiler.


la source
Cela ne donne que les processus qui accèdent au réseau, ce qui n’EST PAS tous les processus.
dave_thompson_085