본문 바로가기
IT/리눅스

리눅스 명령어-2 (프로그램 관리하기)

by 노오-력 2023. 1. 14.

 

1. 실행중인 프로그램 정지하기

ctrl + z 입력

 

 

 

2. 일시정지한 프로그램으로 돌아가기

    or 백그라운드로 실행한 프로그램을 포그라운드로 실행하기

긴 텍스트 파일을 less 명령어로 읽다가 ctrl+z 로 정지 후 fg로 재개하면 보고 있던 위치 그대로 돌아감.

$ fg

 

2-1. 특정 작업번호를 포그라운드로 실행하기

$ fg %n          n=작업번호

 

 

 

3. 일시정지한 프로그램을 백그라운드로 재개하기

$ bg

 

3-1. 특정 작업번호를 백그라운드로 실행하기

$ bg %n          n=작업번호

 

 

4. 실행중인 프로그램 표시하기

$ jobs

 

4-1. 현재 작업(정지상태인 작업 중에서 가장 최근에 정지된 작업 또는 가장 최근에 실행된 작업) 표시하기

$ jobs %% 
$ jobs %+

4-2. 이전 작업(그 직전까지 현재 작업이었던 작업) 표시하기

$ jobs %-

4-3. 특정 작업번호로 작업 표시하기

$ jobs %n                 n=작업번호

4-4. 명령어 명이 xxx 으로 시작하는 작업

$ jobs %xxx

4-5. 명령어 명에 xxx를 포함하는 작업

$ jobs %?xxx

4-6. 프로세스 ID 표시

$ jobs -l

 

 

 

5. 실행중인 프로그램 종료하기

ctrl + c    입력

 

5-1. 특정 프로세스 종료

$ kill PID        PID = 종료시킬 프로세스 ID 
$ kill %n            n = 작업번호

5-2. 프로그램이름에 해당하는 모든 프로그램 종료

$ kilall 프로그램이름

5-3. -TERM 시그널이 생략되어있음. -STOP와 같이 시그널을 보낼 수 있다.

$ kil -STOP %% 
$ kill -s STOP %%

 

*주요 시그널* 

TERM 종료 신호

QUIT 종료신호(core 작성)

KILL 강제종료신호

HUP 재시작 신호

STOP 정지 신호

CONT 재개 신호

INT 끼어들기 신호

 

5-4. 시그널 목록 표시

$ kil -l

 

6. 프로세스 상태 표시하기

$ ps

PID - 프로세스 ID

TTY - 프로세스가 실행된 터미널

TIME - CPU시간

CMD - 실행한 명령어

 

6-1. a,u,x,w 옵션

$ ps auxw

 

a - 모든 사용자의 프로세스 정보 표시

u - 사용자명과 시작 시각 등 표시

x - 제어 터미널이 없는 프로세스(데몬 등) 정보 표시

w - 프로세스마다 표시하는 내용을 늘리는 옵션

 

 

7. 우선순위를 변경해서 프로그램 실행하기

ps l 명령어를 입력하면 NI항목이 있다.

NI항목은 우선순위를 뜻하는데 nice 값이라고 부른다.

nice값의 범위는 -20 ~ 19이고 값이 작을수록 우선 순위가 높기 때문에 -20이 최고 우선순위 값이다.

nice 명령어 없이 그냥 실행하면 nice값이 0이고

nice 명령어와 함께 실행하면 기본값0에 10을 더해 nice값이 10이 된다.

$ nice [실행할 프로그램 명] &

:: &는 백그라운드로 실행

 

 

7-1. 10이외의 nice 값을 설정하기

$ nice -n 프로그램명         n=0~19

슈퍼유저가 아닌 사용자는 우선순위를 올릴 수 없기때문에 0~19만 입력 가능.