linux 명령어 kill

프로세스 강제 종료.

$ kill
Linux 명령어 kill

Linux 명령어 kill

프로세스에 신호를 보내 특정 작업을 종료하거나 조작하는 명령어

1. 자세한 설명

kill 명령어는 Linux에서 실행 중인 프로세스에 신호를 보내 작업을 종료하거나 특정 작업을 수행하도록 요청하는 명령어입니다. 사용자는 프로세스 ID(PID)를 지정하여 제어할 프로세스를 선택합니다. 기본적으로 SIGTERM(프로세스를 종료하라는 신호)을 보내며, 다른 신호를 지정하여 다양한 작업을 수행할 수 있습니다.

2. 사용법

  1. 기본 프로세스 종료
    kill [프로세스 ID]
    지정된 프로세스에 SIGTERM 신호를 보내 종료합니다.
  2. 특정 신호 지정
    kill -[신호 번호/이름] [프로세스 ID]
    특정 신호를 지정하여 프로세스를 조작합니다.
  3. 모든 프로세스 종료
    kill -9 -1
    시스템의 모든 프로세스를 강제로 종료합니다(주의 필요).

3. 자세하게 설명

kill 명령어는 다음과 같은 작업에서 유용하게 사용됩니다:

  • 프로세스 종료: 문제가 있는 프로세스를 종료하여 시스템 안정성을 유지합니다.
  • 신호 처리: SIGHUP과 같은 신호를 보내 프로세스를 재시작하거나 설정을 다시 읽도록 할 수 있습니다.
  • 디버깅: 특정 신호를 사용하여 프로세스를 제어하고 분석합니다.

4. 자세한 명령어 사용법

다음은 kill 명령어의 다양한 사용 예제입니다:

# PID를 지정하여 기본 종료 신호 전송
$ kill 12345

# 강제로 프로세스를 종료 (SIGKILL 신호)
$ kill -9 12345

# 특정 프로세스 그룹의 모든 프로세스 종료
$ kill -15 -123

# 프로세스 목록에서 PID 확인 후 종료
$ ps aux | grep myprocess
$ kill 67890

# SIGSTOP 신호를 보내 프로세스 중지
$ kill -STOP 12345

# SIGCONT 신호를 보내 프로세스 다시 시작
$ kill -CONT 12345

# SIGHUP 신호를 보내 프로세스 구성 다시 로드
$ kill -HUP 23456

# 실행 중인 모든 프로세스 종료
$ kill -9 -1

# 현재 사용자의 모든 프로세스 종료
$ kill -u myuser

# 스크립트를 사용하여 여러 프로세스 종료
#!/bin/bash
PIDS=(12345 67890 112233)
for pid in "${PIDS[@]}"; do
  kill -9 $pid
  echo "프로세스 $pid 종료됨"
done

# 신호 이름을 목록으로 표시
$ kill -l

# 특정 프로세스가 종료될 때까지 기다리기
$ kill -0 12345 && echo "프로세스가 실행 중입니다."

# 결과를 로그 파일로 저장
$ kill -15 12345 >> kill_log.txt

# top 명령어와 결합하여 프로세스 종료
$ top -u myuser
# PID 확인 후 종료
$ kill 54321

# 특정 조건에서 프로세스 종료
$ ps aux | grep "java" | awk '{print $2}' | xargs kill -9

# 파일 크기 초과 시 프로세스 종료
$ while true; do
  if [[ $(du -m /tmp/file | cut -f1) -gt 100 ]]; then
    kill -9 99999
    break
  fi
done

# SSH를 통해 원격 서버에서 프로세스 종료
$ ssh user@remote_server "kill -9 12345"
            

위의 예제는 kill 명령어를 사용하여 프로세스를 제어하고 관리하는 다양한 방법을 보여줍니다.

© 2025 Linux 명령어 설명

Categories:

No responses yet

답글 남기기