Есть ли способ убить все экземпляры определенной программы с помощью команды командной строки?
8 ответов
В GNU/Linux, BSD, OS X и других Unix-подобных
killall program
В винде
taskkill /IM program.exe
В Windows 7 (Vista?) Я предпочитаю tskill processname
как вам не нужно запоминать ключи командной строки или писать .exe в конце. например:
tskill chrome
Убьет все хромовые процессы.
В Windows XP я использовал pskill
из пакета pstools , который использует похожий синтаксис. Обе эти команды также могут работать на удаленных компьютерах, если у вас есть права администратора.
Во многих системах вы найдете команды kill
и killall
.
Если вы знаете PID процесса, вы можете использовать kill PID
Первый убивает только один конкретный процесс. (Или, скорее, он посылает ему сигнал, например, сигнал о прекращении). Вы можете написать обертку вокруг этого с помощью ps и grep, чтобы убить все процессы, соответствующие имени.
или, если установлен, вы можете использовать killall
Однако будьте осторожны, не все команды killall делают одно и то же. На Солярисе это убивает все процессы. Я повторяю, все. Будут убиты не только те, кого вы хотели, но и все процессы, на которые у вас есть права. Обязательно проверьте страницу руководства вашей локальной системы и / или убедитесь, что это ссылка на killall5.
В Windows, если вы хотите завершить процесс и любые дочерние процессы, которые были запущены им, вы должны использовать эту команду Taskkill /im program.exe /t
На Windows 7 есть taskkill
.
для Windows вы можете использовать
taskkill /im имя_программы
используйте taskkill /im имя_программы /f для более проблемных программ
Используйте ProcessExplorer, если вы хотите альтернативу GUI для Taskmanager
Хм, и подумать, что я использовал pkill
все эти годы ...