일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- flutter
- Code Generation
- 프로그래밍
- 개발자
- 맥
- copyWIth
- python
- 도서
- vscode
- dart
- linux
- 리버팟
- 개발
- 유데미 코리아
- 플러터
- command
- 디자인패턴
- freezeD
- 명령어
- 책
- 유데미 러닝크루
- 코딩
- 유데미
- 리눅스
- 가상환경
- 다트
- riverpod
- 파이썬
- ExpansionTile
- ListTile
- Today
- Total
승상의 코딩 블로그
jobs - 복잡하지 않게 하나의 터미널에서 프로그램 관리를 도와주는 명령어 본문
저는 리눅스에서 분석 Tool 등을 많이 실행합니다.
프로그램을 실행하다보면 터미널창이 블락되기 때문에 새로운 터미널창을 생성해야 합니다.
(위 사진에서 test.sh 를 실행한 뒤, 프롬프트가 생기지 않습니다. 다음 명령어를 입력할 수 없다는 것을 의미합니다.)
이렇게 사용하다보니 터미널창 관리가 매우 힘들어집니다.
그래서 저는 명령어뒤에 "&" 를 붙여서 백그라운드로 프로그램을 실행한 뒤 하나의 터미널에서 관리하기로 했습니다.
하지만 백그라운드로 프로그램을 돌리니 문제가 발생합니다.
백그라운드로 실행되는 프로그램을 확인하거나 그 프로그램을 종료해야 했기 때문입니다.
이 때, 사용할 수 있는 명령어가 "jobs" 라는 명령어 입니다.
help jobs
Jobs 명령어는 man 매뉴얼로 볼 수 없다. bash 쉘에 built-in 되어 있기 때문이다.
bash 내장 함수는 help 명령어로 확인할 수 있다.
jobs
백그라운드로 스크립트(프로그램)을 하나 실행한다.
test.sh 는 10초간 딜레이는 주는 스크립트이다.
sh test.sh 에 &를 붙여 터미널이 블락되지 않고 백그라운드로 실행되도록 한다.
백그라운드에 있는 프로그램은 jobs 명령어를 통해 확인할 수 있다.
출력값 : [1]+ Running sh test.sh& -> [1] 은 작업번호이다. Running 은 프로그램의 상태를 나타낸다.
프로그램이 종료되었을 때쯤, 다시 jobs 를 입력하면 프로그램이 완료(Done)되었다고 볼 수 있다.
다시 jobs 를 입력하면 완료되었다고 알려줬던 프로그램은 출력하지 않는다.
kill %작업번호
"kill %작업번호" 명령어를 통해 백그라운드에서 실행되는 프로그램을 종료할 수 있다.
종료하고 jobs 를 입력하면 종료되었다고 뜬다. 다시 jobs 를 입력하면 종료되었다고 보여줬던 작업들을 출력하지 않는다.
'Linux (리눅스)' 카테고리의 다른 글
[Linux] - 출력 재지정 (0) | 2024.09.19 |
---|---|
파일에 데이터를 저장하는 입출력 재지정(I/O redirection) - '>' (0) | 2023.09.16 |
리눅스 파일 권한 (0) | 2023.09.03 |
리눅스 검색 명령어 - grep (0) | 2023.01.24 |
리눅스 네비게이션2 - 기초 명령어(pwd, ls, cd)와 경로(relative path, absolute path) (0) | 2022.12.20 |