Linux / 명령어 / bg - 중지된 셸 작업을 백그라운드에서 재개
bg는 현재 Bash에서 중지된 작업을 백그라운드로 재개합니다. 실행 중인 명령에 Ctrl+Z를 눌러 중지한 뒤 터미널을 계속 사용하고 싶을 때 활용합니다.
bg 명령어란?
bg는 멈춘 작업에 계속 실행 신호를 보내지만 터미널의 전면 제어권은 주지 않습니다. 작업 번호는 jobs로 확인하고 %1처럼 지정합니다. 입력을 기다리는 대화형 프로그램은 백그라운드에서 다시 멈출 수 있습니다.
기본 문법
bg [%작업번호]
설치된 구현과 옵션은 배포판에 따라 다를 수 있습니다. help bg으로 현재 시스템의 설명을 확인하세요.
사용 예제
중지된 작업 확인
포그라운드 명령 실행 중 Ctrl+Z를 누른 뒤 상태를 확인합니다.
jobs -s
특정 작업을 백그라운드에서 재개
예시의 %1은 실제 jobs 출력의 번호로 바꾸세요.
bg %1
재개 결과 확인
Running 상태인지 확인합니다.
jobs -l
일시 중지한 작업을 백그라운드로
bg는 현재 셸의 일시 중지된 작업을 백그라운드에서 계속 실행합니다. 예를 들어 sleep 60을 실행하다 Ctrl+Z로 멈춘 뒤 작업 번호를 확인합니다.
jobs bg %1 jobs
예시 상태 변화:
[1]+ Stopped sleep 60 [1]+ Running sleep 60 &
%1은 PID가 아니라 현재 셸의 작업 번호 1을 뜻합니다. 셸이 작업 제어를 지원하지 않거나 일시 중지된 작업이 없으면 bg가 실패합니다. 작업이 종료되면 jobs에서 사라질 수 있으니 상태를 다시 확인하세요.
주요 옵션과 형식
| 옵션·형식 | 설명 |
|---|---|
%N |
현재 셸의 N번 작업을 지정합니다. |
%+ |
현재 작업을 지정합니다. |
%- |
이전 작업을 지정합니다. |
인수 생략 |
Bash가 현재 작업으로 간주하는 작업을 사용합니다. |
사용할 때 주의할 점
Ctrl+Z로 멈춘 작업은 아직 실행 중이 아닙니다. bg로 재개해도 표준 입력을 읽으려는 작업은 다시 중지될 수 있습니다. bg는 셸 작업 제어 기능이므로 다른 터미널에서 시작한 프로세스에 적용할 수 없습니다.
자주 묻는 질문
명령 끝에 &를 붙이는 것과 bg는 같은가요?
&는 처음부터 백그라운드로 시작하고, bg는 이미 중지된 현재 셸의 작업을 백그라운드에서 재개합니다.
공식 문서
옵션의 정확한 동작과 구현별 차이는 bg 관련 공식 문서에서 확인할 수 있습니다.









