Computer/Server:Linux&Window

KILL 명령어로 프로세스 일괄적으로 죽이기.

ywlee 2016. 3. 4. 18:04

보통 쉘에서 kill 하면.. 하나하나 pid 적어가며 kill 하다 어느날 프로그램을 된통잘못돌려서, 프로세스가 100개 넘게 생성된 적이 있었다.


하나하나 죽이기 짜증나서 검색해보니 있더라!


우선, 원하는 process들을 출력해보자. 나같은 경우는 mcall_step_charge.php 라는 프로그램을 100개 넘게 생성했었다.




asterisk  4677     1  0 16:27 ?        00:00:14 php /var/lib/asterisk/agi-bin/lib/mcall_step_charge.php SIP/10168-0000024a 15778000

asterisk  4854     1  0 14:24 ?        00:00:49 php /var/lib/asterisk/agi-bin/lib/mcall_step_charge.php SIP/10218-0000016c 15882588

asterisk  6552     1  0 15:27 ?        00:00:27 php /var/lib/asterisk/agi-bin/lib/mcall_step_charge.php SIP/10133-000001bf 15778766

asterisk  7114     1  0 16:34 ?        00:00:13 php /var/lib/asterisk/agi-bin/lib/mcall_step_charge.php SIP/10163-00000261 15889999

asterisk  7576     1  0 17:11 ?        00:00:05 php /var/lib/asterisk/agi-bin/lib/mcall_step_charge.php SIP/10172-000002e8 15778000

asterisk  9101     1  0 14:57 ?        00:00:37 php /var/lib/asterisk/agi-bin/lib/mcall_step_charge.php SIP/10133-000001a5 15778766

asterisk  9164     1  0 16:06 ?        00:00:18 php /var/lib/asterisk/agi-bin/lib/mcall_step_charge.php SIP/10108-0000020e 15778000

.....


위와 같이 생성될진데, 4677..4854...6552 어느세월에 죽이고 있을까!!

SQL 서브쿼리마냥 ps 결과를 묶어서 kill 명령어를 날리니 극복


$> kill $(ps -ef | grep mcall)


결과적으론..ps -ef | grep mcall 에서 나올 결과들을..kill해라 !