Битлента
Сетевые команды и утилиты5 мин чтения·

tasklist: как вывести список процессов Windows и отфильтровать нужный

Команда tasklist показывает запущенные процессы Windows: PID, память, службы внутри процесса. Разбор ключей /FI, /SVC, /V, /FO и примеры фильтров.

Кратко

tasklist без параметров выводит таблицу процессов с именем, PID, сеансом и памятью. Ключ /FI фильтрует по имени, PID, статусу или пользователю, /SVC показывает службы внутри процесса, а /FO CSV пригоден для сохранения списка в файл.

Что видно в таблице без параметров

Введите tasklist в командной строке, и Windows напечатает список всех процессов текущего компьютера. Права администратора для этого не нужны. Столбцов пять: имя образа (то есть имя исполняемого файла), PID, имя сеанса, номер сеанса и объём используемой памяти.

Для чего это нужно, если есть диспетчер задач? Вывод tasklist можно перенаправить в файл, отфильтровать, вставить в обращение в поддержку, обработать скриптом. Кроме того, команда работает там, где графический интерфейс недоступен: в удалённом сеансе или там, где доступна только консоль.

PID — это числовой идентификатор процесса. Он уникален только на время жизни процесса: после завершения номер может достаться другому. Поэтому сверяйте PID с именем, прежде чем передавать его другой команде.

Заголовок «Имя сеанса» в таблице показывает, к какому сеансу относится процесс. Службы Windows обычно работают в сеансе с именем Services, а программы пользователя в сеансе Console или в сеансе удалённого рабочего стола. Это помогает отличить процессы, запущенные вами, от фоновых.

Фильтры /FI: имя, PID, статус

Ключ /FI задаёт условие в кавычках в формате «поле оператор значение». Поддерживаются операторы eq (равно), ne (не равно), gt, lt, ge и le для числовых полей. Среди полей, описанных в справке: IMAGENAME, PID, STATUS, SESSION, USERNAME, MEMUSAGE, SERVICES, WINDOWTITLE.

Что нужноПример
Найти процесс по имениtasklist /FI "IMAGENAME eq notepad.exe"
Найти по PIDtasklist /FI "PID eq 1234"
Процессы, не отвечающие на запросыtasklist /FI "STATUS eq NOT RESPONDING"
Процессы, занимающие много памятиtasklist /FI "MEMUSAGE gt 500000"

Значение MEMUSAGE задаётся в килобайтах, поэтому число 500000 соответствует примерно полумиллиарду байт. Несколько фильтров можно указать подряд: каждый новый /FI добавляет условие, и вывод показывает только процессы, подходящие под все условия сразу.

Условие целиком, включая значение с пробелами вроде NOT RESPONDING, берут в одну пару двойных кавычек. Названия полей и значений в справке записаны латиницей, и в русской версии Windows их тоже вводят латиницей, как показано в таблице.

Если ничего не найдено, команда выведет сообщение, что задач, соответствующих условию, нет. Это не ошибка, а просто пустой результат.

Фильтр по пользователю может пригодиться на компьютере с несколькими учётными записями: условие USERNAME eq с именем в формате компьютер\пользователь оставит только процессы выбранной записи. Имена в фильтрах нужно писать в том виде, в котором их показывает ключ /V.

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно

Службы внутри процесса: ключ /SVC

Процесс svchost.exe в списке встречается много раз, и по имени не понять, какая именно служба за ним скрывается. Ключ /SVC добавляет столбец со службами, которые работают внутри каждого процесса. Так можно отличить, скажем, один экземпляр svchost.exe от другого и сопоставить его с конкретной службой Windows.

Команда tasklist /SVC /FI "PID eq 1234" покажет службы только для выбранного PID. Это удобно, когда процесс нагружает диск или сеть, а в диспетчере задач виден лишь общий хост.

Ключ /V (подробный вывод) добавляет состояние, имя пользователя, время процессора и заголовок окна. Он работает медленнее, потому что собирает больше сведений. Если нужны и службы, и подробности, запустите команду дважды с разными ключами.

Если нужно найти, в каком процессе работает конкретная служба, подойдёт фильтр по полю SERVICES: tasklist /SVC /FI "SERVICES eq имя_службы". Имя службы здесь служебное, а не отображаемое в списке служб. Узнать служебное имя можно в свойствах службы в соответствующей оснастке.

Формат вывода и сохранение в файл

Ключ /FO задаёт формат: TABLE (по умолчанию), LIST или CSV. Для сохранения и последующей обработки удобен CSV: tasklist /FO CSV /NH > processes.csv. Ключ /NH убирает строку заголовков, и в файле остаются только данные.

Файл в формате CSV откроется в электронной таблице, и список можно отсортировать по памяти или по имени. Формат LIST выводит каждое поле на отдельной строке и лучше читается глазами, когда столбцов много.

  • tasklist > list.txt: сохранить обычную таблицу;
  • tasklist /FO LIST /V > details.txt: подробный вывод по полям;
  • tasklist | findstr /I chrome: быстрый поиск по подстроке без точных фильтров;
  • tasklist /FO CSV /NH: данные для скрипта без заголовка.

Сохранённый до и после проблемы список помогает сравнить, какие процессы появились. Но по одному названию процесса делать вывод об опасности нельзя: для этого нужна проверка расположения файла и подписи.

Электронную таблицу удобно использовать для сравнения двух снимков. Сохраните список до установки программы и после, затем отсортируйте по имени и сверьте строки. Так видно, какие процессы добавились, и это проще, чем сравнивать глазами длинные списки в окне консоли.

Проверка подозрительного процесса и удалённый компьютер

Увидели незнакомое имя? Не завершайте его сразу. Сначала выясните, откуда запущен файл. В диспетчере задач через контекстное меню можно открыть расположение файла, а в PowerShell путь выводит команда Get-Process с полем Path. Системные процессы обычно лежат в каталоге Windows или Program Files, а не во временных папках профиля.

Ключ /S позволяет запросить список у удалённого компьютера, а /U и /P задают учётные данные. Для этого на целевой машине должен быть разрешён удалённый доступ к управлению и нужны права. В домашней сети такое используется редко, а в организациях настройки определяет администратор.

Когда процесс определён и вы решили его закрыть, перейдите к странице про taskkill. А если нужно понять, какая программа держит сетевой порт, пригодится разбор netstat с поиском по порту.

Если задача состоит в поиске процесса, который тормозит систему, tasklist даёт лишь моментальный снимок. Он не показывает нагрузку на процессор во времени, поэтому для такой диагностики лучше подходит диспетчер задач или монитор ресурсов, а tasklist помогает быстро записать, что было запущено в момент проблемы.

🛡️ Остались проблемы с соединением?
Можно пользоваться постоянно: российские приложения работают, включать и выключать ничего не нужно. Без карты и регистрации, настройка за пару минут.
Попробовать бесплатно
tasklistпроцессыwindowsкомандная строка

Часто задаваемые вопросы

Читайте также