줄기세포

[Linux] Background로 명령어 실행, 조회, kill, 다른 쉘의 jobs kill 하는 방법(jobs, bg, fg, pkill, w, who,...) 본문

Linux

[Linux] Background로 명령어 실행, 조회, kill, 다른 쉘의 jobs kill 하는 방법(jobs, bg, fg, pkill, w, who,...)

줄기세포(Stem_Cell) 2021. 3. 29. 21:25

수행 환경은 CentOS 7.8 입니다.

 

jobs - BackGround로 실행되는 작업 List 보여줌 (PID와 다르게 현재 Shell에 종속, 다른 shell 에서는 조회되지 않는다.)


fg  - List의 첫번째 Queue에 있는 작업 불러옴
fg % [JID]  - [JID]에 해당하는 작업 불러옴  ** JID는 jobs 조회시 Process의 번호

bg  - 바로 전 일시정지한 작업 BackGround로 실행
bg % [JID]  - [JID]에 해당하는 작업 BackGround로 실행

kill % [JID]  - [JID]에 해당하는 작업 Kill
kill -[signal] %[JID]   - [JID]에 해당하는 작업에 Signal을 보냄

disown %[JID]   - 작업의 소유권을 놓아버림. 터미널이 오너가 아니라, 해당 터미널 종료 후에도 계속 수행
명령어 & - 작업을 background로 돌려버림

ctrl + z - 작업 멈추고 BackGround로 돌림 [일시정지 상태]
ctrl + c - 작업 중단


>>> 시나리오 1.

nohup sleep 200 &  ** nohup 명령어는 끊김없이 실행되도록 해주는 명령어
nohup tail -f /var/log/messages  &
nohup tail -f /var/log/dmesg &
jobs


fg  %1
ctrl + z

jobs
bg

 

 



who - session 별 tty 조회
who am i - 현 session tty 조회
w - session 별로 tty 조회 및 실행중 작업 조회
tty - 현 session tty
ps - 현재  session의 process를 조회하려면


>>> 시나리오 2.

session #1  sesseion #2 비고
sleep 400 &    
jobs    
  w  ** session  별로 tty 조회 - [tty]는 pts/1 형태
  ps -ef | grep [tty] OR  ps -ft [tty]
exit    
  w  
  ps -ef | grep [tty]  
  kill -9 [pid]  or pkill -9 -t [tty]
  ps -ef | grep [tty]  

 

 

m.blog.naver.com/PostView.nhn?blogId=dudwo567890&logNo=130156852012&proxyReferer=https:%2F%2Fwww.google.com%2F

 

Comments