Как убить много экземпляров процесса за один раз? - PullRequest
1 голос
/ 27 октября 2011

У меня есть несколько экземпляров процесса (т.е. с общей командной строкой).Я хотел бы убить их всех за один раз.Как этого добиться?

Ответы [ 4 ]

3 голосов
/ 27 октября 2011

Параметры:

  1. killall
  2. ps | awk | xargs kill
  3. tag-and-kill в htop

Killall сверхмощный, но я считаю опасным использование без разбора. Вариант 2 неудобен в использовании, но я часто нахожусь в среде, где нет killall; кроме того, опуская бит xargs на первом проходе, я могу просмотреть осуждаемые процессы, прежде чем качнуть лезвие. В конечном итоге я обычно отдаю предпочтение htop, так как он позволяет мне выбирать и выбирать, прежде чем нажать «k».

1 голос
/ 27 октября 2011

Возможно, вы ищете команду killall.Например:

killall perl

уничтожит все процессы Perl, работающие на вашем компьютере.Подробнее см. http://linux.die.net/man/1/killall.

0 голосов
/ 27 октября 2011

ПРИМЕЧАНИЕ: killall - это ответ ... ЕСЛИ вы в Linux. У SysV также есть команда killall, но она делает совсем иное: она является частью процессов завершения работы до остановки системы. Так что да, killall - самый простой, но если вы часто переключаетесь между системами Linux и SysV, я мог бы порекомендовать вместо этого написать быстрый скрипт, который будет делать то, что вы хотите.

0 голосов
/ 27 октября 2011

killall сделает это за вас.Используйте man killall для вариантов, но я обычно делаю:

killall myProgName

Просто будьте очень осторожными (например, сначала используйте ps, чтобы убедиться, что он убьет только то, что вы хотите).

...