Есть ли команда, эквивалентная ‘ps’ в Unix, которая может перечислить все процессы на машине Windows?
Работа с cmd.exe:
tasklist
Если у вас есть Powershell:
get-process
Через WMI:
wmic process
(вы также можете запрашивать удаленные машины с помощью /node: ComputerOrIP
, и есть намного больше способов настроить эту команду: ссылка)
Существует инструмент под названием Командная строка инструментария управления Windows инструмент (wmic.exe).
Вы можете вызвать список процессов wmic
, чтобы увидеть все процессы.
-
5Я нашел это так thread, пытаясь решить ту же проблему, и хотел отметить, что wmic у меня хорошо сработал. С помощью wmic вы можете выбрать наиболее подходящий вывод для разбора, используя/format: csv или/format: rawout. Осторожно: wmic не правильно реализует формат csv (поля никогда не цитируются, даже если они содержат встроенные кавычки или запятые), поэтому я был вынужден использовать xml . — JimN 28 июл. 2011, в 2:05
-
2@JimN -/format: rawxml, а не/format: rawout — Джо, 24 янв., 15:32
-
Можете ли вы отфильтровать любой процесс с помощью wmic? — Kiquenet 03 сен. ’15 в 17:40
-
1Если вам нужно найти командную строку, запустившую процесс, вот ответ — Шейн Гэннон, 15 февраля 2016 г., 16:30
-
Чтобы уменьшить количество столбцов для печати:
wmic process get ProcessId, Description, ParentProcessId, ReadOperationCount, WriteOperationCount
, и, как предлагает @ShaneGannon, вы можете запроситьParentProcessId
, чтобы найти дочерние процессы, например: justpaste.it/6kjou — CPHPython 3 июня ’20 в 17:03
Существует инструмент под названием Инструмент командной строки Windows Management Instrumentation (wmic.exe).
Вы можно вызвать список процессов wmic
, чтобы увидеть все процессы.
Я хотел упомянуть, что WMIC (запись pam) может сделать много еще. Взгляните на мою страницу сниппетов WMIC, которая представляет собой шпаргалку, показывающую многие из распространенных способов использования WMIC (с примером вывода) здесь
-
Упрощенный пример ( меньше столбцов ):
wmic process get ProcessId, Description, ParentProcessId, ReadOperationCount, WriteOperationCount
— CPHPython, 03 июня 2020 г., 15:58 -
Ваша страница о WMIC и WMIC + PS весьма полезна. — sancho.s ReinstateMonicaCellio 11 июл.2020 в 12:14
Я хотел упомянуть, что WMIC (запись pam) может делать намного больше. Взгляните на мою страницу сниппетов WMIC, которая представляет собой шпаргалку, показывающую многие из распространенных способов использования WMIC (с примером вывода) здесь
-
Tasklist
-
WMIC/OUTPUT:C:ProcessList.txt PROCESS получить заголовок, командную строку, идентификатор процесса
или
WMIC/OUTPUT:C:ProcessList.txt путь win32_process get Caption, Processid, Commandline
-
Tasklist
-
WMIC/OUTPUT:C:ProcessList.txt ПРОЦЕСС получить заголовок, командную строку, идентификатор процесса
или
WMIC/OUTPUT:C:ProcessList.txt путь win32_process get Caption, Processid, Commandline
Я пробовал в Windows 7. Команда: TASKLIST/FI "IMAGENAME eq application_name"
Например: c: > TASKLIST/FI "IMAGENAME eq notepad. exe "
Чтобы показать весь процесс с деталями порта:
c: > TASKLIST
Также, чтобы убить процесс, вы можете использовать c: > pskill или tskill имя процесса
Например: c: > Блокнот tskill
-
1
TASKLIST/FI "IMAGENAME eq explorer.exe"
возвращает одну целую строку в качестве вывода. Есть ли способ получить только сам PID? — Pacerier 5 мая 2015 г., 0:03 -
для более запоминающейся команды,
taskkill
является синонимомtskill
— Mushroom Man 5 дек. ’17 в 1:24 -
В 8.1 нет
tskill
, толькоtaskkill
иpskill
предоставляется SysInternals, но не Windows. (@KiritoBepsibane) — dave_thompson_085 01 июн 2018, в 18:59
Я пробовал в Windows 7. Команда: TASKLIST/FI "IMAGENAME eq application_name"
Например: c: > TASKLIST/FI "IMAGENAME eq notepad.exe"
Чтобы показать весь процесс с деталями порта:
c: > TASKLIST
Также, чтобы убить процесс, вы можете использовать c: > pskill или tskill имя процесса
Например: c: > tskill notepad
список задач или pslist из sysinternals. Кроме того, в PowerShell великолепен get-process.
список задач или pslist из sysinternals. Кроме того, из PowerShell великолепен get-process..
Если вы используете Powershell, у него есть команда ‘ps’ (псевдоним Get-Process)
-
Этот псевдоним является частью длинного списка удобных псевдонимов, установленных по умолчанию, что облегчает жизнь людям, привыкшим к командам Unix. Такой список можно получить (в файл для дальнейшего использования) с помощью
Get-Alias> ps_alias.txt
. — sancho.s ReinstateMonicaCellio 11 июл.2020, в 12:08
Если вы используете Powershell, у него есть команда ‘ps’ (псевдоним Get-Process)
Чтобы убить процесс, используйте:
TASKKILL/F/IM processname.exe
Например:
TASKKILL/F/IM firefox .exe

-
Это плохой ответ. Вопрос в том, как составить список процессов, а не в том, как их убить. — Рикки Гибсон 30 сен. ’19 в 21:47
Чтобы убить процесс, используйте:
TASKKILL/F/IM processname.exe
Например:
TASKKILL/F/IM firefox.exe
Если вы используете Windows XP, попробуйте использовать команду ‘tasklist’. Я пробовал это с Vista, и, похоже, тоже работает.
Если вы используете Windows XP, попробуйте использовать команду ‘tasklist’. Я пробовал это с Vista, и, похоже, тоже работает.
Используйте эту команду, чтобы увидеть все процессы на компьютере с Windows
tasklist/svc

-
1Можете ли вы отфильтровать любой процесс с помощью списка задач с конвейером или другим способом? — Kiquenet 03 сен. ’15 в 17:41
-
@Kiquenet Да, вы можете:
список задач | findstr "firefox.exe"
. Если это возвращаетerrorlevel
1, процесс был найден в списке процессов. — Андреас 18 марта ’16, в 18:48 -
@mrt:
findstr
не требует кавычек вокруг стрелки, если он не содержит пробела или специального символа, такого как &, хотяfind
делает, и оба из них возвращают 1, если НЕ найдено (0, если найдено). — dave_thompson_085 01 июн., 18:54 -
@ dave_thompson_085 Конечно, вы правы, но я считаю хорошей привычкой заключать строки в кавычки. Это не дает мне случайно пропустить их, когда они понадобятся. Кроме того, это упрощает чтение заявления, поскольку сразу становится очевидным, что такое поисковый запрос.. — Андреас 03 июн. ’18 в 15:26
Используйте эту команду, чтобы увидеть все процессы на компьютере с Windows
tasklist/svc
команда открытия Windows подсказка
C: > список задач//список всех задач C: > Taskkill/IM firefox.exe/F//Убить задачу по имени
или
C: > Taskkill/PID 26356/F//убить задачу с помощью PId
открыть командную строку Windows
C: > tasklist//список всех tasksC: > Taskkill/IM firefox.exe/F//Убить задачу по имени
или
C: > Taskkill/PID 26356/F//убить задачу с помощью PId
У меня была следующая проблема с Windows 2003 SP2: Tasklist не возвращал никаких выходных данных на stdout или stderr при вызове из процесса, запущенного как служба Windows (даже под локальной учетной записью). Список задач, возвращенный с (недокументированным) кодом 128.
Вызванный из той же программы, запущенной как обычный процесс (не как служба), он действительно был запущен.
Никакой помощи чтобы изменить это. Я не мог найти ни причины, ни решения, но использовал вместо него «pslist/acceptpteula» sysinternal.
Та же проблема с taskkill: мне пришлось заменить его на pskill.
У меня была следующая проблема в Windows 2003 SP2: Tasklist не возвращал никаких выходных данных на stdout или stderr при вызове из процесса, запущенного как Служба Windows (даже под локальной учетной записью). Список задач, возвращенный с (недокументированным) кодом 128.
Вызванный из той же программы, запущенной как обычный процесс (не как служба), он действительно был запущен.
Никакой помощи чтобы изменить это. Я не мог найти ни причины, ни решения, но использовал вместо него «pslist/acceptpteula» sysinternal.
Та же проблема с taskkill: мне пришлось заменить его на pskill.
Я сделал msproject (c исходный код), архив доступен по адресу: lsproc.zip project archive
и exe-файл: lsproc.exe двоичный
это инструмент командной строки, вывод:
lsproc Thierry Bremardt.bremard@gmail.com перечисляет двоичные файлы и драйверы с их локальным путем на дисках, большая часть кода получена с сайта msdn -------------- ------ Идентификатор процесса: 0 -------------------- Идентификатор процесса: 4 (PID: 4) PageFaultCount: 0x00002E4B PeakWorkingSetSize: 0x00419000 WorkingSetSize (использование памяти): 0x0003A000 (232 ko) QuotaPeakPagedPoolUsage: 0x00000000 QuotaPagedPoolUsage: 0x00000000 QuotaPeakNonPagedPoolUsage: 0x00000000 QuotaNonPagedPoolUsage: 0x00000000 PeakNonPagedPoolUsage: 0x00000000 Идентификатор процесса: 764smss.exe (PID: 764) SystemRoot System32 smss.exe PageFaultCount: 0x000000D6 Peak WorkingSetSize: 0x00082000 WorkingSetSize (использование памяти): 0x0006C000 (432 кО) QuotaPeakPagedPoolUsage: 0x00006C34 QuotaPagedPoolUsage: 0x00001854 QuotaPeakNonPagedPoolUsage: 0x00000Pool000Pool0002Usage: 0x000004D8 - Идентификатор процесса: 816 -------------------- Идентификатор процесса: 844winlogon.exe (PID: 844) ?? C: WINDOWS system32 winlogon. EXE PageFaultCount: 0x0000261D PeakWorkingSetSize: 0x00B58000 WorkingSetSize (использование MEM): 0x0029B000 (2668 Ko) QuotaPeakPagedPoolUsage: 0x0001B054 QuotaPagedPoolUsage: 0x000185A4 QuotaPeakNonPagedPoolUsage: 0x0000C988 QuotaNonPagedPoolUsage: 0x0000B6A0 PagefileUsage: 0x005EC000 PeakPagefileUsage: 0x006C6000 -------------- ------... PeakPagefileUsage: 0x03277000 -------------------- Идентификатор процесса: 2712lsproc.exe (PID: 2712) C: Documents and Settings LoginX Bureau lsproc.exe PageFaultCount: 0x000000EC PeakWorkingSetSize: 0x000F1000 WorkingSetSize (использование памяти): 0x000E4000 (912 ko) Квота PeakPagedPoolUsage: 0x000032B4 QuotaPagedPoolUsage: 0x000032B4 QuotaPeakNonPagedPoolUsage: 0x00000400 QuotaNonPagedPoolUsage: 0x00000398 PagefileUsage: 0xT00042000 PeakPageFiler0005.exe 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 --------------
-
файл не найден, мистер — Kiquenet 13 фев. 2012, 15:24
Я сделал msproject (исходный код c), архив доступен по адресу: lsproc.zip архив проекта
и exe-файл: lsproc.exe двоичный
это средство вывода командной строки:
lsproc Thierry Bremardt.bremard@gmail.comlist двоичный файлы и драйвер с их локальным путем на дисках, большая часть кода получена с сайта msdn -------------------- Идентификатор процесса: 0 ----------- --------- Идентификатор процесса: 4 (PID: 4) PageFaultCount: 0x00002E4B PeakWorkingSetSize: 0x00419000 WorkingSetSize (использование памяти): 0x0003A000 (232 ko) QuotaPeakPagedPoolUsage: 0x0000oolUsagePagePeakPagedPoolUsage: 0x0000ool0000Usage QuotaNonPagedPoolUsage: 0x00000000 PagefileUsage: 0x00000000 PeakPagefileUsage: 0x00000000 -------------------- Идентификатор процесса: 764smss.exe (PID: 764) SystemRoot System32 smss.exe PageFaultCount: 0x000000D6 PeakWorkingSetSize: 0x00082000 WorkingSetSize (использование памяти): 0x0006C000 (432 ko) QuotaPeakPagedPoolUsage: 0x00006C34 Q uotaPagedPoolUsage: 0x00001854 QuotaPeakNonPagedPoolUsage: 0x000004D8 QuotaNonPagedPoolUsage: 0x00000280 PagefileUsage: 0x0002C000 PeakPagefileUsage: 0x00030000 ------------------- Идентификатор процесса: 816 ---------- --------- ID процесса: 844winlogon.exe (PID: 844) ?? C: WINDOWS system32 winlogon.exe PageFaultCount: 0x0000261D PeakWorkingSetSize: 0x00B58000 WorkingSetSize (использование памяти): 0x0029B000 (2668 ko ) QuotaPeakPagedPoolUsage: 0x0001B054 QuotaPagedPoolUsage: 0x000185A4 QuotaPeakNonPagedPoolUsage: 0x0000C988 QuotaNonPagedPoolUsage: 0x0000B6xA0 PagefileUsage: 0x0000B6A0 PagefileUsage: 0x005ECS - 0x005-000Usage..file0006 --------------- Идентификатор процесса: 2712lsproc.exe (PID: 2712) C: Documents and Settings LoginX Bureau lsproc.exe PageFaultCount: 0x000000EC PeakWorkingSetSize: 0x000F1000 WorkingSetSize (использование памяти ): 0x000E4000 (912 ko) QuotaPeakPagedPoolUsage: 0x000032B4 QuotaPagedPoolUsage: 0x000032B4 QuotaPeakNonPagedPoolUsage: 0x00000400 QuotaNonPa gedPoolUsage: 0x00000398 PagefileUsage: 0x00042000 PeakPagefileUsage: 0x0005C000 Имеется 131 драйвер: -------------------- 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 ------ --------
Используя WMI и Powershell, вы можете:
Get-WMIObject -Class Win32_Process
Затем вы можете фильтровать свойства с помощью Select-Object
и отображать в графическом интерфейсе с помощью Out-GridView
.

Используя WMI и Powershell, вы можете:
Get-WMIObject -Class Win32_Process
Затем вы можете фильтровать свойства с помощью Select-Object
и отображать в графическом интерфейсе с помощью Out-GridView
.
Здравствуйте, если вы хотите получить список идентификаторов запущенных процессов на компьютере с Windows, откройте экран cmd
и введите:
netstat -aon | more
используйте клавишу Enter для прокрутки.
-
Это дает только те процессы, которые доступ к сети, а это НЕ все процессы. — dave_thompson_085 01 июн 2018, в 18:55
Здравствуйте, если вы хотите перечислить идентификаторы запущенных процессов на компьютере с Windows, откройте экран cmd
и введите:
netstat -aon | подробнее
используйте клавишу Enter для прокрутки.