Домой Виды беспроводных сетей Остановка процесса. Как остановить вредоносные процессы? Использование утилиты Process Explorer

Остановка процесса. Как остановить вредоносные процессы? Использование утилиты Process Explorer

Несмотря на то что Linux стабильнее чем Windows, в плане работы программ и различных сервисов, случается всякое и иногда возникает необходимость завершить процесс Linux. Это может понадобиться, если программа завила, когда вы запустили системный сервис в фоне через терминал, а не систему инициализации, а также во многих других случаях, когда убить процесс Linux проще, перезагружать всю систему.

В этой статье мы рассмотрим несколько самых распространенных способов завершить процесс Linux. Опишем подробно как происходит остановка процесса и как все сделать правильно.

Управление процессами в операционной системе Linux осуществляется с помощью сигналов. В том числе и завершение любого процесса. Сигналы передает система, но также их может передавать пользователь с помощью специальных команд или даже сочетаний клавиш в терминале. Когда процессу приходит сигнал о необходимости завершиться, он должен выполнить некоторые подготовительные действия.

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

  • SIGINT - самый безобидный сигнал завершения, означает Interrupt. Он отправляется процессу, запущенному из терминала с помощью сочетания клавиш Ctrl+C. Процесс правильно завершает все свои действия и возвращает управление;
  • SIGQUIT - это еще один сигнал, который отправляется с помощью сочетания клавиш, программе, запущенной в терминале. Он сообщает ей что нужно завершиться и программа может выполнить корректное завершение или проигнорировать сигнал. В отличие от предыдущего, она генерирует дамп памяти. Сочетание клавиш Ctrl+/;
  • SIGHUP - сообщает процессу, что соединение с управляющим терминалом разорвано, отправляется, в основном, системой при разрыве соединения с интернетом;
  • SIGTERM - немедленно завершает процесс, но обрабатывается программой, поэтому позволяет ей завершить дочерние процессы и освободить все ресурсы;
  • SIGKILL - тоже немедленно завершает процесс, но, в отличие от предыдущего варианта, он не передается самому процессу, а обрабатывается ядром. Поэтому ресурсы и дочерние процессы остаются запущенными.

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

Сначала Ctrl+C , если это возможно, затем SIGTERM - он хоть и завершает процесс, но делает эту культурно, и только в крайнем случае SIGKILL. А теперь рассмотрим как убить процесс по pid Linux на практике. Если вы всегда используете SIGKILL, тогда на ум приходит такая картинка:

Как убить процесс Linux?

Для передачи сигналов процессам в Linux используется утилита kill. Ее синтаксис очень прост:

$ kill -сигнал pid_процесса

Сигнал представляет собой один из выше перечисленных сигналов для завершения процесса. По умолчанию, если этот параметр не указан, используется сигнал SIGTERM, что является очень правильно. Также нам нужно указать какой процесс нужно завершить. Для этого используется уникальный идентификатор процесса - PID.

Допустим, у нас выполняется утилита ping. Мы хотим ее завершить с помощью kill. Тогда, сначала мы узнаем ее идентификатор с помощью команды ps:

ps aux | grep ping

В первой строчке отобразится сама утилита ping, а во второй сама программа ps. Берем нужный PID и завершаем процесс с помощью SIGTERM:

kill -TERM 20446

И только если после этой команды процесс продолжил висеть, а это вы можете проверить, выполнив ps. Только теперь можно выполнить SIGKILL:

kill -KILL 20446

Теперь снова проверяем:

Если процесс запущен от суперпользователя, то, естественно, вам нужно использовать sudo. Не всегда удобно уничтожать процесс по его PID, как минимум, потому, что вам этот PID нужно еще узнать. Мы могли бы нагородить сложных конструкций с использованием xargs, чтобы вычислять автоматически pid по имени процесса и сразу же его завершать, но в этом нет необходимости. Уже существуют специальные утилиты.

Как завершить процесс с помощью pkill

Утилита pkill - это оболочка для kill, она ведет себя точно так же, и имеет тот же синтаксис, только в качестве идентификатора процесса ей нужно передать его имя. Утилита сканирует директорию proc и находит PID первого процесса с таким именем, затем отправляет ему SIGTERM. Таким образом, вы можете убить процесс по имени Linux. Например, если мы хотим завершить тот же ping:

Также можно вручную задать тип сигнала:

pkill -TERM ping

Вместо ps, вы можете использовать утилиту pgrep для поиска pid процесса, убедимся что наша программа завершена:

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

Как остановить процесс с помощью killall

killall работает аналогично двум предыдущим утилитам. Она тоже приминает имя процесса в качестве параметра и ищет его PID в директории /proc. Но эта утилита обнаружит все процессы, с таким именем и завершит их. Например:

Как видите, запущено несколько процессов, осталось остановить процесс Linux с помощью killall:

Команда завершит все запущенные утилиты ping, вы можете убедиться в этом еще раз выполнив pgrep:

Выводы

В этой статье мы рассмотрели как убить процесс Linux. Иногда эта задача может быть очень полезной, но важно понимать, что ее нужно выполнять правильно. Нельзя сказать, что передача SIGKILL вместо SIGTERM очень опасна, но так делать не стоит. Надеюсь, эта информация была полезна для вас.

Нечасто, конечно, но иногда можно встретить ситуации, когда после закрытия программы в «Диспетчере задач» не завершается процесс, отвечающий за ее функционирование, или продолжают работать какие-то дополнительные (сопутствующие) службы приложения. При этом система в дополнение ко всему может сообщать, что пользователю для завершения определенного процесса не хватает прав (отказано в доступе). Почему так происходит и как остановить работу ненужных или зависающих программ, читайте в ниже представленном материале.

Не завершается процесс в «Диспетчере задач» (отказано в доступе). Почему?

Чтобы понять, какое именно решение по устранению возникшей проблемы использовать в каждом конкретном случае, для начала следует выяснить причины, вследствие которых они возникают. Почему же в «Диспетчере задач» не завершается процесс с указанием на отсутствие прав доступа?

Действительно, иногда это может быть связано с тем, что пользователь вошел в систему не под регистрацией администратора и пытается завершить критически важную системную службу или процесс, запущенный другим пользователем. Однако невозможность остановки работы какого-то приложения в основном связана даже не с системными процессами, а с программами, которые могли установиться на пользовательский компьютер самопроизвольно (вирусы, рекламные апплеты и т. д.). Обычно именно они могут блокировать завершение работы. Но бороться с такими проявлениями поведения и системных, и пользовательских программ или служб можно довольно просто.

Перезагрузка системы

Если не завершается процесс в «Диспетчере задач», что делать в первую очередь? Как правило, рядовые пользователи поступают достаточно просто. Если по каким-то причинам в «Диспетчере задач» Windows 10 не завершается процесс, они попросту перезагружают систему. Понятно, что полный рестарт и приводит к остановке всех служб. Но что если после перезагрузки процесс активируется снова? А ведь некоторые процессы, запускаемые вместе с системой, нельзя отследить даже в стандартном разделе автозагрузки.

Впрочем, если пользователь вошел в систему не под администраторской, а под собственной учетной записью, как уже понятно, нужно просто сменить пользователя.

Если не хотите постоянно перепрыгивать с одной записи на другую, администраторскую «учетку» можно и вовсе отключить, прописав в командной строке команду «net user Администратор active:no» (без кавычек). После этого все программы будут стартовать только с правами администратора (для некоторых приложений не будут выдаваться даже предупреждения безопасности службы контроля учетных записей UAC, которые многих пользователей несказанно раздражают).

Завершение активных процессов через командную строку

Но приведенные выше действия положительный эффект могут дать не всегда. Что же делать, если в «Диспетчере задач» не завершается процесс, который, скажем, перегружает центральный процессор или использует оперативную память слишком усердно? В такой ситуации оптимальным инструментом из тех, которые имеются в Windows-системах, станет командная консоль (cmd).

Ее необходимо запустить от имени админа (если учетная запись суперпользователя не отключена), а затем воспользоваться командой taskkill (всю информацию о дополнительных атрибутах можно просмотреть посредством ввода строки «taskkill /?».

Из всего списка нас более всего интересуют атрибуты «/F» и «/IM», которые дописываются после основной команды. Как это выглядит? Предположим, у нас в «Диспетчере задач» не завершается процесс «Гугл Хром». Команда принудительной остановки приложения будет выглядеть так: «taskkill /F /IM Chrome.exe» (опять же, без кавычек). Как уже понятно, такое решение приемлемо для исполняемых файлов программ. Если воспользоваться дополнительным ключом «/T», при вводе основной команды завершения работы выбранного приложения автоматически будут завершены и все дочерние процессы.

Остановка процессов с указанием идентификаторов

Если таким способом в «Диспетчере задач» не завершается процесс, который был выбран пользователем, например, при неправильном вводе имени исполняемого файла проблемной программы или службы, остановку процесса можно произвести с указанием идентификатора.

Его можно просмотреть в самом «Диспетчере задач», дополнительно активировав отображение столбца с ИД процесса. Основная же команда в этом случае примет такой вид: «taskkill /F PID 0000», где 0000 - определенный в «Диспетчере задач» идентификатор процесса.

В принципе, проблему, связанную с тем, что в «Диспетчере задач» не завершается процесс какой-то программы, можно решить, следуя советам специалистов Microsoft, которые опубликованы на странице поддержки. Суть состоит в том, чтобы загрузить с сайта специальный архив, содержащий набор инструментов PSTools, затем распаковать его на жесткий диск и переместить файл PsExec.exe или объект PsExec64.exe, в зависимости от архитектуры системы, в корень системного раздела (диска «С»), а затем через командную консоль выполнить команду «c:\psexec -i -d -s taskmgr.exe» (без кавычек). После этого в «Диспетчере задач» нужно будет выполнить все необходимые действия, связанные с остановкой определенных процессов, затем закрыть «Диспетчер» и удалить исходный файл PsExec из системного раздела.

Примечание: использовать этот метод даже на сайте корпорации рекомендуется только на свой страх и риск.

Использование утилиты Process Explorer

Куда проще воспользоваться небольшим приложением которое является альтернативой «Диспетчера задач», но с расширенными возможностями. Преимущество этой программы состоит в том, что устанавливать ее на жесткий диск не нужно, поскольку приложение изначально является портативным и запускается из одного исполняемого файла. После старта программы в ней достаточно выбрать искомый незавершаемый процесс или даже целое дерево процессов с дочерними апплетами, выбрав из меню ПКМ команды Kill Process или Kill Process Tree.

Кроме «убивания» ненужных процессов и задач эта утилита предоставляет еще и дополнительную информацию. Так, например, если это требуется, можно совершенно просто узнать, какой именно программой запущен тот или иной процесс.

Разблокирование доступа к файлам процесса

Наконец, если завершение определенных процессов невозможно произвести только по причине блокировки доступа к отвечающему за него файлу, очень может быть, исправить ситуацию можно будет за счет использования утилиты Unlocker.

Сначала, как уже понятно, восстанавливается доступ к исходному файлу (узнать его можно непосредственно в «Диспетчере задач», выбрав из меню ПКМ просмотр расположения файла), а затем процесс завершается обычным способом.

Проблемы вирусного воздействия

Вирусы, к сожалению, ограничивать доступ к остановке процессов и служб тоже могут. И далеко не всегда это связано напрямую с самими вирусными апплетами. Если такая ситуация наблюдается, для начала рекомендуется проверить систему каким-нибудь портативным антивирусом, а при невозможности нейтрализации угроз обратиться к программе Kaspersky Rescue Disk, при помощи которой можно загрузиться еще до старта системы со съемного носителя, а затем выполнить глубокое сканирование, которое включает в себя даже оперативную память.

Краткий итог

Вот, собственно, и все, что касается принудительного завершения процессов в «Диспетчере задач». Что касается наилучшего инструмента, самым простым выглядит альтернативный менеджер Process Explorer. Если же под рукой такой программы нет, подойдет и командная строка. Единственное условие для выполнения всех вышеописанных команд - старт самой консоли с правами администратора.

Если у вас медленно работает компьютер, а пространство жёсткого диска перегружено, очистите его от лишних программ и компонентов, а также отключите ненужные процессы и службы. Сделать это можно стандартными средствами Windows либо с помощью сторонних программ.

Откуда появляются лишние программы

Какие программы и процессы в Windows 7 можно убрать

В Windows 7 три категории данных, загружающих систему - программы, процессы и службы. Программа устанавливается на компьютер для выполнения функции, необходимой пользователю. Процесс может быть системным, необходимым для корректной работы Windows 7, и пользовательским, запущенным вместе с программой. Службы в системе запускаются по умолчанию и отключаются через «Управление компьютером».

Процессы можно отключить через «Диспетчер задач» (инструкция приведена ниже).

Таблица: какие процессы можно отключить без вреда для системы

Процесс Описание
soffice Отвечает за работу Open Office.
reader_sl Ускоритель Adobe Reader.
hkcmd Процесс Intel, сопровождает аппаратное обеспечение компьютера.
adobeARM Проверяет обновления Adobe Reader.
RAVCpl64 Аудиоменеджер от Realteck.
CCC Контрольный центр для видеокарт ATI, нужен, только если вы играете в игры.
neroCheck Ищет конфликтующие драйверы.
jqs Ускоряет работу программ на Java.
jusched Ищет обновления для Java.
wmpnetwk Система поиска Windows Media Player.
osppsvc Защита программ MS Office 2010.
sidebar Отвечает за работу гаджетов Windows 7.
nwiz Отвечает за действия nVidia NView.
atiptaxx Открывает доступ к настройкам ATI-видеокарт.

Не отключайте процесс Explorer.exe - остановка приведёт к удалению иконок рабочего стола и панели задач Windows.

Таблица: процессы, которые нельзя отключать

Процесс Описание
taskshot Хост-файл.
msdtc Координатор транзакций сетевых систем.
smss Управление сеансами Windows.
wininit Автозапуск программ.
winlogon Вход в Windows.
services Запуск служб Windows.
explorer Рабочий стол, ярлыки.
spoolsy Поддерживает очередь печати.
lsm Управляет состоянием сеансов.
taskmgr Отвечает за работу диспетчера задач.
searchindexer Индексирование поиска.
csrss Отвечает за консольные приложения.
sppsvc Защита платформы Windows.
svhost Отвечает за сетевой обмен.
conhost Для обработки консольных окон.
lsass Сохраняет локальную безопасность пользователей.

Если вы не уверены, можно ли завершить процесс, откройте расположение исполняемого файла. Если он находится в системной папке Windows, не стоит его останавливать.

Windows 7 не даёт пользователю завершить некоторые особо важные процессы. При перезагрузке система запускает их повторно.

Помимо процессов, в системе Windows работают службы, часть из которых с помощью меню «Управление компьютером» можно закрыть без ущерба для безопасности ПК. Список служб, которые можно остановить:

  • факс;
  • удалённое управление Windows;
  • удалённый реестр;
  • удалённые рабочие столы;
  • поддержка Bluetooth;
  • сервер удалённых рабочих столов;
  • вторичный вход в систему;
  • смарт-карта;
  • диспетчер автоподключений удалённого доступа;
  • координатор распределенных транзакций (КРТ);
  • ktmrm для КРТ.

Если вы не используете локальную сеть, отключите службу «Модуль поддержки NetBIOS» и переведите на ручной режим службу «Браузер компьютеров».

Службу загрузки изображений нельзя отключать, если подключены сканер или веб-камера.

Как стереть программы и остановить процессы на Windows 7

Удалить утилиты и остановить процессы можно несколькими способами: через меню «Пуск», с помощью «Панели управления» и «Диспетчера задач», а также с помощью специально разработанных программ.

Как деинсталлировать программы и отключить службы из меню «Пуск»

Открыв «Пуск», можно просмотреть список программ и удалить некоторые:

Недостаток способа в том, что после стирания программы средствами Windows сохраняются её файлы и остаточные записи в реестре.

Также из меню «Пуск» вы можете остановить работу служб. Для этого:


Не отключайте все службы подряд - часть из них отвечает за корректную работу Windows.

Видео: отключение лишних процессов и служб

Как стереть приложение из «Панели управления»

Для деинсталляции утилиты недостаточно стереть папку, где она находится, или иконку с рабочего стола. Из стандартных средств Windows можно использовать программу удаления.

  1. Нажмите на «Пуск» и выберите «Панель управления».
  2. Откройте «Удаление программы».
  3. Компьютер откроет список программ, работающих на компьютере, в алфавитном порядке.
  4. Кликните по названию утилиты, которую будете деинсталлировать и щёлкните «Удалить/Изменить» вверху окошка.
  5. Во всплывшем окошке подтвердите удаление.

После завершения деинсталляции может быть необходима перезагрузка компьютера.

Видео: деинсталляция из «Панели управления»

Как остановить процессы через «Диспетчер задач»

Чтобы остановить процессы, выполняемые Windows, запустите «Диспетчер задач», нажав Ctrl+Alt+Del.


При перезагрузке компьютера некоторые процессы и службы запускаются автоматически. Поэтому для окончательного отключения удалите программу, использующую процесс, из автозапуска («Диспетчер задач», вкладка «Автозапуск») и отключите соответствующую службу.

Во вкладке «Автозагрузка» отображается полный список программ, запускающихся автоматически при старте Windows 7. Выберите программы, которые не нужны вам открытыми, и снимите галочки рядом с ними, а затем нажмите «ОК». После перезагрузки компьютера автозапуск будет отключён.

Другие варианты удаления неиспользуемых программ

Практически все инсталляторы предлагают пользователям выбрать папку, куда будут помещены файлы программы. По умолчанию они выполняют установку в папку C:\Program files. Открыв папку, вы увидите папки с программным обеспечением. Для деинсталляции программы напрямую:

  1. Зайдите в папку утилиты, которую будете стирать.
  2. Внутри найдите файл Uninstall.exe.
  3. Дважды щёлкните по файлу мышью.
  4. Откроется окно деинсталлятора. Подтвердите удаление и дождитесь окончания процесса.

Более сложный метод - деинсталляция приложений из командной строки. Чтобы выполнить удаление:

  1. Зайдите в командную строку. Для этого нажмите Win+R и в окошке «Выполнить» впишите cmd. Нажмите «ОК».
  2. Пропишите команду WMIC и нажмите клавишу Enter. Вы увидите надпись: wmic: root\cli.
  3. Пропишите запрос product get name. Через некоторое время вы увидите список установленных программ.
  4. Пропишите: product where name = «наименование программы в точности» call uninstall. При написании имени программы учитывайте регистр. Если имя введено неправильно, нажав клавишу Enter, вы заметите информацию об ошибке.
  5. Нажмите «Y» для подтверждения процедуры и дождитесь надписи Method Execution successful.

Сторонние программы для удаления ненужных файлов

Используя средства Windows, стереть программу без «хвостов» сложно. И разработчики придумывают сторонние приложения - деинсталляторы. Инструкции по работе с некоторыми из них приведены ниже.

PC Decrapifier

  1. Нажмите «Проверить обновления» (Check for updates).
  2. В открывшемся окне вы увидите вопрос «Вы используете новый компьютер»? Отвечайте, не приукрашивая.
  3. Создайте метку для восстановления Windows и нажмите «Далее» (Next).
  4. Программа выполнит автоматический поиск неиспользуемых приложений и представит их в виде списка.
  5. Отметьте галочками программы для удаления и нажмите кнопку Remove.
  6. PC Decrapifier предложит вам выполнить деинсталляцию прочих программ вручную. Выполните при необходимости.
  7. В последнем окне снимите галочку с пункта «Сформировать отзыв» (Submit feedback) и нажмите «Закончить» (Finish).

PC Decrapifier отлично справляется со сторонним софтом, тулбарами и навязанными при загрузке других программ приложениями.

Видео: обзор PC Decrepifier

CCleaner - комплексная очистка

Программа очищает пространство жёсткого диска и реестр Windows. Предусмотрен функционал для контроля автозагрузки и удаления установленного ранее софта. Дополнительный функционал располагается в меню «Сервис».

CCleaner находит больше установленных приложений, чем стандартный деинсталлятор Windows 7. А после деинсталляции он «подчищает» остаточные файлы и записи реестра. Чтобы удалить программу:

  1. Запустите CCleaner.
  2. Слева выберите пункт «Сервис».
  3. Найдите подпункт «Удаление программ».
  4. Из списка выберите программу для удаления и кликните пункт «Деинсталляция». Кнопка «Удалить» требуется, чтобы убрать название утилиты только из списка - с её помощью деинсталлировать приложение с ПК не удастся.

Чтобы отключить/включить автозагрузку программ:

  1. Откроется информация о программах, которые запускаются автоматически с Windows
  2. Выделите программу, для которой хотите отключить автозагрузку, и нажмите «Выключить».

CCleaner позволяет управлять автозагрузкой не только для Windows, но и для дополнений браузеров.

Видео: обзор CCleaner

IObit Uninstaller

IObit Uninstaller - простейший деинсталлятор программ с функцией очистки реестра. Утилита предлагает пользователю список приложений для деинсталляции. Он разделен на категории, переключаться между которыми можно в левом меню. IObit Uninstaller работает в двух режимах - стандартный и принудительное удаление.

Чтобы деинсталлировать утилиту с IObit в стандартном режиме:

  1. Выберите её из списка.
  2. Нажмите «Удалить» внизу окошка.
  3. Программа создаст точку восстановления, выполнит удаление ненужного приложения, а затем просканирует систему и реестр на наличие остаточных файлов и записей.
  4. После сканирования вы увидите список найденных компонентов и сможете удалить их окончательно.

Как деинсталлировать программу в принудительном режиме (требуется, когда файлы защищены от удаления):

  1. Выберите приложение, которое не подлежит деинсталляции в стандартном режиме, и нажмите «Удалить принудительно» (Forced Uninstall).
  2. Подтвердите деинсталляцию.

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

Видео: обзор IObit Uninstaller

Revo Uninstaller

Revo Uninstaller - программа, позволяющая стереть софт с компьютера без остатков. Чтобы деинсталлировать приложение:

  1. Включите Revo Uninstaller.
  2. Выделите ненужную программу и нажмите на значок «Удалить».
  3. В окошке подтверждения действия выберите «Да».
  4. Выберите метод деинсталляции программы: встроенный, безопасный, средний или расширенный. Опытным пользователям стоит воспользоваться расширенным методом.
  5. Нажмите «Далее». Revo Uninstaller удалит программу и проведёт сканирование Windows.
  6. В открывшемся окне будут отображены записи, оставшиеся в реестре. Отметьте их галочками и щёлкните «Удалить».
  7. В следующем окне будет отображён список папок и файлов, сохранённых после деинсталляции. Отметьте ненужные и нажмите «Удалить».

В этом отрывке рассмотрены команды управления процессами. Вы научитесь замораживать процессы, размораживать, отправлять в фоновый режим, изменять приоритет, просматривать запущенные процессы и жестоко их убивать. Введено понятие сигналов. Рассмотрены такие команды, как bg, fg, jobs, kill, nohup, nice, renice, ps и top.

Об авторах

Daniel Robbins

Дэниэль Роббинс - основатель сообщества Gentoo и создатель операционной системы Gentoo Linux. Дэниэль проживает в Нью-Мехико со свой женой Мэри и двумя энергичными дочерьми. Он также основатель и глава Funtoo , написал множество технических статей для IBM developerWorks , Intel Developer Services и C/C++ Users Journal.

Chris Houser

Крис Хаусер был сторонником UNIX c 1994 года, когда присоединился к команде администраторов университета Тэйлора (Индиана, США), где получил степень бакалавра в компьютерных науках и математике. После он работал во множестве областей, включая веб-приложения, редактирование видео, драйвера для UNIX и криптографическую защиту. В настоящий момент работает в Sentry Data Systems. Крис также сделал вклад во множество свободных проектов, таких как Gentoo Linux и Clojure, стал соавтором книги The Joy of Clojure .

Aron Griffis

Эйрон Гриффис живет на территории Бостона, где провел последнее десятилетие работая в Hewlett-Packard над такими проектами, как сетевые UNIX-драйвера для Tru64, сертификация безопасности Linux, Xen и KVM виртуализация, и самое последнее - платформа HP ePrint . В свободное от программирования время Эйрон предпочитает размыщлять над проблемами программирования катаясь на своем велосипеде, жонглируя битами, или болея за бостонскую профессиональную бейсбольную команду «Красные Носки».

Вы наверняка знакомы с традиционным способом завершить процесс в Windows с помощью диспетчера задач. Этот способ эффективен, но способ с использованием командной строки дает больше контроля и возможность завершить несколько процессов за раз.

Возможность завершить процесс из командной строки дает нам команда TaskKill . Вы можете убить процесс из командной строки по его идентификатору (PID) или по имени образа (имени exe файла). Запустите консоль от имени администратора и введите команду tasklist , чтобы просмотреть все запущенные процессы.

C:\tasklist Имя образа PID Имя сессии № сеанса Память ========================= ======== ================ =========== ============ System Idle Process 0 Services 0 24 КБ System 4 Services 0 1 256 КБ conhost.exe 5944 Console 2 2 888 КБ notepad.exe 3100 Console 2 7 400 КБ tasklist.exe 8892 Console 2 6 100 КБ WmiPrvSE.exe 7340 Services 0 6 864 КБ smss.exe 372 Services 0 544 КБ csrss.exe 536 Services 0 3 336 КБ wininit.exe 812 Services 0 436 КБ

В приведенном выше примере можно увидеть имя образа и PID для каждого процесса. Если вы хотите убить процесс Notepad? то нужно ввести:

taskkill /IM notepad.exe /F

Флаг /F – нужен для принудительного завершения процесса. Если его не использовать, то в некоторых случаях ничего не произойдет, приложение продолжит свою работу. Как пример попытка завершения процесса explorer.exe без этого флага ни к чему не приведет.

Если у вас есть несколько экземпляров приложений, как например chrome, то выполнение команды taskkill /IM. chrome.exe завершит их все. При указании PID можно завершить только конкретные процессы Chrome.

В taskkill есть варианты фильтрации, которые позволяют использовать следующие переменные и операторы:

Переменные

  • STATUS (статус)
  • IMAGENAME (имя образа)
  • PID (значение)
  • SESSION (номер сессии)
  • CPUTIME (время CPU)
  • MEMUSAGE (использование памяти в кб)
  • USERNAME (имя пользователя)
  • MODULES (имя DLL)
  • SERVICES (имя службы)
  • WINDOWTITLE (заголовок окна)

Операторы

  • eq (равно)
  • ne (не равно)
  • gt (больше чем)
  • lt (меньше чем)
  • ge (больше или равно)
  • le (меньше или равно)
  • * (любые символы)

Вы можете использовать переменные и операторы с флагом /FI.

Например, допустим вы хотите, завершить все процессы, у которых заголовок окна начинается с “Интернет”, то команда будет следующей:

taskkill /FI “WINDOWTITLE eq Internet*” /F

Чтобы завершить все процессы запущенные от имени Marina:

taskkill /FI “USERNAME eq Marina” /F

Таким же образом можно завершить процесс запущенный на другом компьютере из командной строки. Например имя компьютера OperatorPC, необходимо ввести:

taskkill /S OperatorPC /U Имя_пользователя_на_удаленной_машине /P Пароль_от_удаленной_машины /IM notepad.exe /F

Подробную информацию вы всегда можете получить запустив taskkill с ключом /?

Завершить процесс из командной строки

Новое на сайте

>

Самое популярное