프로세스 관련 명령어
ps
: 내 세션에 속한 프로세스만 출력ps -e
: all processps -a
: all process except both session leaders and processes not associated with a terminal(관리자가 자주 사용)ps -f
: full formatps -l
: long formatps -eo
: 자주 쓰는 조합ps -ef | grep bash
프로세스에 시그널을 보내어 해당 프로세스를 제어한다.
kill [OPTIONS] [PID]
아래는 주요 시그널의 종류이며, kill -l
로 사용 가능한 시그널의 종류를 확인할 수 있다.
번호 | 시그널 | 기능 |
---|---|---|
1 | SIGHUP | Hang Up |
2 | SIGINT | Interrupt <CTRL-C> |
3 | SIGQUIT | Quit <CTRL-\> |
6 | SIGABRT | |
9 | SIGKILL | Kill |
10 | SIGUSR1 | |
11 | SIGSEGV | Segment Violation |
12 | SIGUSR2 | |
15 | SIGTERM | Terminate |
18 | SIGCONT | |
19 | SIGSTOP | |
20 | SIGTSTP | Temporary Stop <CTRL-Z> |
명령어 예시
kill 13011 # PID 13011 프로세스에 SIGTERM(default) 시그널을 보낸다.
kill -QUIT 13013 # PID 13013 프로세스에 SIGQUIT 시그널을 보낸다.
kill -9 13012 # PID 13012 프로세스에 9번(SIGKILL) 시그널을 보낸다.
# 1번 터미널
less ~/.bashrc
# 2번 터미널
ps -e | grep less
kill [less의 PID] # → less 프로세스가 종료된다.
ps
명령어의 출력에서 TTY를 보면 2가지 방식으로 출력된다.ps
의 TTY에 ?로 출력된다.kill -USR1 -[PID]
: 음수의 PID는 프로세스 그룹에 시그널을 보낸다.jobs
: stoped, back-ground process 리스트를 출력한다.fg %#
: #은 jobs의 작업 번호. 지정한 프로세스를 fore-ground로 가져온다.bg %#
: 정지된 백그라운드 프로세스를 back-ground에서 running 상태로 변경한다.command &
: command를 back-ground에서 running 상태로 실행시킨다.📙강의 - 코인즈월렛 기술이사 김선영