본문 바로가기
Linux

리눅스 쉘스크립트(shell script)로 특정 프로세스 종료(kill)

by daewooki 2021. 6. 18.
반응형

젠킨스에서 배포를 할 때 command로 기존에 실행되고 있는 프로세스를 찾아서 종료(kill) 해야하는 상황이 있다.

매번 ps -ef | grep  해서 기존 실행되고 있는 프로세스 id 찾아서 command로 하곤 했는데 귀찮아서 스크립트를 작성했다.

 

ps -ef | grep  "서비스명" 해서 서비스명이 포함된 모든 프로세스들을 한번에 죽일 수 있다. 

이젠 귀찮을 일 없을 듯!

 

#!/bin/bash

var1=$(ps -ef | grep 'python')
echo process info: ${var1}

get_pid=$(echo ${var1} | cut -d " " -f2)


if [ -n "${get_pid}" ]
then
    result1=$(kill -9 ${get_pid})
    echo process is killed.
else
    echo running process not found.
fi

pkill.sh로 저장했고, 권한은 755로 해줬다.

실제 젠킨스 배포 과정에 ./pkill.sh 이 실행되도록 해주었다. 

프로세스 종료 후 실제 배포 스크립트를 실행시켰다.

반응형

댓글