Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- http 완벽가이드
- golang
- domain driven develop
- 고 배열
- 도메인 주도 개발 시작하기
- 백준 12761
- 12761번 돌다리
- MongoDB Realm
- 백준 파이썬
- 백준 12761번
- 우분투
- 트리 순회
- 12761 돌다리
- 도메인 주도 개발
- ddd
- 백준 사이트
- 백준
- 자바 디자인패턴
- 몽고디비 렘
- String 함수
- go
- 하둡
- hadoop
- http 개념
- 파이썬
- 정렬
- 자바 디자인 패턴
- flask
- golang struct
- 자바
Archives
- Today
- Total
개발바닥
리눅스 백그라운드 실행 본문
반응형
1. 백그라운드 실행
$ 명령어 &
명령어 뒤에 &을 붙이면 백그라운드에서 작업을 실행한다.
&만 사용하여 실행했을 때, 사용자가 터미널 세션을 끊어버리면 백그라운드 중인 작업도 같이 종료된다.
2. 터미널 세션이 끊켜도 백그라운드에 계속 실행하는 방법
$ nohup 명령어 &
nohup 명령어를 함께 사용하면 백그라운드에서 작업함과 동시에 터미널 세션을 끊거나 컴퓨터를 종료해도 프로세스가 사라지지 않는다.
nohup으로 실행하면 실행한 위치에 nohup.out 파일이 생성되는데, 명령어 실행 시 발생하는 표준 출력을 nohup.out에 입력한다.
출력 문구를 생성하고 싶지 않다면 아래 커맨드를 사용하면 된다.
$ nohup 명령어 & > /dev/null
※ /dev/null 파일은 항상 비어있으며, /dev/null 에 전송되는 데이터는 버려진다. (출력이 필요없는 경우 출력으로 지정해서 사용)
파일 설명자 설명
0 | 표준 입력 |
1 | 표준 출력 |
2 | 표준 오류(진단) 출력 |
3. 프로세스 강제 종료 시키기
ps -ef 로 해당 쉘 pid 확인해서 kill로 종료시키면 된다.
ps -ef | grep task이름 // pid 확인
kill -9 pid번호 // 프로세스 강제 종료
4. 백그라운드 사용 후 pid 파일에 작성하기
nohup 명령어 > /dev/null 2>&1 & echo $! > tmp.pid
위 커맨드를 하나씩 분석해보겠습니다.
1. nohup
터미널이 종료되더라도 백그라운드로 계속 실행합니다.
2. /dev/null 2>&1
에러가 발생하면 에러 메시지를 콘솔에 출력. ( 2>&1에 의미는 표준 출력의 전달되는 곳으로 표준에러를 전달하라는 의미)
3. echo $!
백그라운드 가장 마지막에 실행되는 프로세스의 pid 값을 출력
4. > tmp.pid
tmp.pid 에 write하라.
매번 느끼지만 리눅스 명령어 사용할 때 제대로 실행이 안된다면 쪼개서 체크해보고 오타가 있는지 체크하시기 바랍니다..
반응형
'ETC' 카테고리의 다른 글
[ 지식 공유 ] 결제 보안 방법 (0) | 2023.04.08 |
---|---|
단위 테스트 (Unit Test) vs 통합 테스트 (Integration Test) (0) | 2023.03.03 |
(번역) 지연 로딩 적절하게 사용하자 (0) | 2022.03.28 |
Newman 사용 방법 (0) | 2022.03.17 |
포스트맨(Postman) 사용 방법 (0) | 2022.03.17 |
Comments