0. 약어
PID : 프로세서 ID
RSS : 사용되는 실제 메모리의 용량(KB)
USER : 실행시킨 계정
SZ : 스택 크기(KB)
TIME : 현재까지 사용된 CPU의 시간
%CPU : 마지막 분동안 프로세서가 사용한 CPU시간의 백분율
TTY : 프로세서의 제어 터미널(t3=/dev/tty3)
START : 시작 시간
STAT : 프로세스 상태
1. top
현재 실행되는 Task들을 유동적으로 관찰 가능.
윈도우의 작업관리자랑 비슷함.
2. ps
아래는 ps --help all 의 결과
이하 자주 쓰는 옵션들
-A , -e : 모든 프로세스 출력 (매우 길다)
a : 다른 사용자의 프로세서도 출력
-a : 세션 리더 빼고 출력
-l : 자세한 정보
-u : 각 프로세서의 사용자 이름과 시작 시간 표시
-j : job 중심 형태
-s : signal 중심 형태
-v : virtual memory 중심 형태
-m : memory 정보 출력
-w : wide 형태로 출력(강제개행 안함)
-h : 헤더 생략
-r : 현재 실행중인 프로세서만 출력
-f : 모든 정보 출력
-S : 차일드(child) CPU 시간과 메모리 페이지 결함(fault) 정보를 추가 한다.
-c : 커널 task_structure로 부터 명령 이름을 보여준다.
-x : 실행시킨 터미널이 없는 프로세서 확인
3. kill
아래는 kill --help의 결과와 kill -l 의 결과.
주 사용 방법
kill -15 PID : 작업종료
kill -9 PID : 강제종료
다음은 완전히 같다.
kill -s KILL PID
kill -s SIGKILL PID
kill -s 9 PID
kill -n 9 PID
kill -9 PID
kill PID
kill
signal number이나 옵션을 지정하지 않으면 기본적으로 작업종료로 사용한다.
4. 활용법
kill -9 `ps -ef | grep 'PROCESS_NAME' | awk '{print $2}'`
kill -9 'abcd' : 'abcd'를 PID로 갖는 프로세스를 강제 종료
ps -ef : 모든(-e) 프로세스를 자세히(-f) 보여줌
grep 'PROCESS_NAME' : 인풋에서 'PROCESS_NAME'을 찾음
예시 : 파이프라인( | )을 통해 ps -ef의 결과를 grep의 입력으로 넣어준 경우
awk '{print $2}' : 결과물 중 두 번째 필드를 출력
예시 : 파이프라인을 통해 위 결과를 awk의 입력으로 넣어준 경우
즉, 위 환경에서 다음 두 줄은 같은 의미다.
kill -9 `ps -ef | grep 'KakaoTalk.exe' | awk '{print $2}'`
kill -9 33560 38105 // 33560, 38105는 카카오톡
리눅스의 awk 사용법에 관련된 것을 다음 포스팅으로 올릴 예정.
'Linux > Shell' 카테고리의 다른 글
[Linux] grep 명령어 사용법 (0) | 2020.06.04 |
---|