Любой способ записать Windows.bat файл для уничтожения процессов?

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

Кто-нибудь знает, как это сделать?

Ответ 1

Вы можете сделать это с помощью "taskkill". С параметром /IM вы можете указать имена изображений. Пример:

taskkill/im somecorporateprocess.exe

Вы также можете сделать это, чтобы "заставить" убить:

taskkill/f/im somecorporateprocess.exe

Просто добавьте 1 строку на каждый процесс, который вы хотите убить, сохраните как .bat файл и введите его в каталог запуска. Проблема решена!

Если это устаревшая система, PsKill будет делать то же самое.

Ответ 2

taskkill /f /im "devenv.exe"

это приведет к принудительному уничтожению pid с именем exe "devenv.exe"

эквивалентно -9 по команде nix'y kill

Ответ 3

Поскольку TASKKILL может быть недоступен в некоторых домашних/основных версиях окон, здесь есть несколько альтернатив:

TSKILL processName

или

TSKILL PID

Имейте в виду, что processName не должен иметь суффикс .exe и ограничен 18 символами.

Другим вариантом является WMIC:

wmic Path win32_process Where "Caption Like 'MyProcess.exe'" Call Terminate

wmic предлагает еще большую гибкость, чем taskkill. С wmic Path win32_process get вы можете видеть доступные файлы, которые вы можете фильтровать.

Ответ 4

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

Ответ 5

Получите автозапуск от Марка Руссиновича, парня из Sysinternals, который обнаружил руткит Sony... Лучшее программное обеспечение, которое я когда-либо использовал для очистки вещей, которые запускаются автоматически.

Ответ 6

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

Ответ 7

Используйте Powershell! Встроенные командлеты для управления процессами. Примеры здесь (жесткий путь), здесь (построено in) и здесь (подробнее).

Ответ 8

Пожалуйста, найдите приведенную ниже логику, где она работает при условии.

Если мы просто вызываем taskkill /im applicationname.exe, он будет убивать, только если этот процесс запущен. Если этот процесс не запущен, он выдает ошибку.

Чтобы проверить, что до вызова takskill, может быть выполнена проверка, чтобы убедиться, что выполнение taskkill будет выполняться только в том случае, если процесс запущен, чтобы он не выдавал ошибку.

tasklist /fi "imagename eq applicationname.exe" |find ":" > nul

if errorlevel 1 taskkill /f /im "applicationname.exe"

Ответ 9

Здесь я написал пример команды, которую вы можете вставить в командной строке cmd и он написан для chrome.exe.

FOR /F "tokens=2 delims= " %P IN ('tasklist /FO Table /M "chrome*" /NH') DO (TASKKILL /PID %P)

Для просто принимает все PID перечисленные ниже на tasklist команды и выполняет TASKKILL/PID на каждом PID

tasklist /FO Table /M "chrome*" /NH

Если вы используете for в командном файле, просто используйте %% P вместо% P