Linux / 명령어 / fg - 셸 작업을 포그라운드로 가져오기
fg는 현재 셸의 백그라운드 또는 중지된 작업을 포그라운드로 가져옵니다. 그 작업이 터미널 입력을 다시 받도록 하거나 직접 상태를 확인할 때 사용합니다.
fg 명령어란?
포그라운드로 가져오면 셸 프롬프트는 작업이 종료되거나 다시 중지될 때까지 기다립니다. 작업 번호는 jobs로 확인합니다. fg의 대상은 PID가 아니라 현재 셸의 작업 지정자입니다.
기본 문법
fg [%작업번호]
설치된 구현과 옵션은 배포판에 따라 다를 수 있습니다. help fg으로 현재 시스템의 설명을 확인하세요.
사용 예제
현재 셸 작업 확인
어떤 작업이 백그라운드에 있는지 확인합니다.
jobs -l
특정 작업을 앞으로 가져오기
예시의 작업 번호를 실제 값으로 바꿉니다.
fg %1
작업 다시 중지하거나 종료
포그라운드 작업에서 Ctrl+Z는 중지, Ctrl+C는 보통 인터럽트 신호를 보냅니다.
jobs
백그라운드 작업을 다시 앞으로
fg는 현재 셸의 작업을 터미널 전경으로 가져와 입력을 받거나 완료될 때까지 기다리게 합니다. 작업 번호는 먼저 jobs에서 확인합니다.
jobs fg %1
예를 들어 vim notes.txt를 Ctrl+Z로 일시 중지한 뒤 fg %1로 가져오면 편집기 화면이 터미널에 다시 나타납니다. 화면이나 반환 시점은 해당 프로그램에 따라 달라지므로 고정된 한 줄의 출력은 없습니다.
fg는 다른 터미널의 임의 PID를 가져오는 명령이 아닙니다. 작업이 이미 끝났거나 현재 셸의 작업이 아니면 가져올 수 없습니다. 실행 중인 프로그램을 다시 멈추려면 일반적으로 Ctrl+Z를 사용합니다.
주요 옵션과 형식
| 옵션·형식 | 설명 |
|---|---|
%N |
현재 셸의 N번 작업을 선택합니다. |
%+ |
현재 작업을 선택합니다. |
%- |
이전 작업을 선택합니다. |
인수 생략 |
현재 작업을 대상으로 합니다. |
사용할 때 주의할 점
현재 셸이 관리하지 않는 프로세스는 fg로 가져올 수 없습니다. 비대화형 환경에서는 작업 제어가 꺼져 있을 수 있습니다. 긴 작업을 터미널 종료 후에도 유지하려면 fg 대신 tmux나 서비스 관리 방식을 검토하세요.
자주 묻는 질문
fg %1에서 %1은 PID인가요?
아니요. 현재 셸의 작업 번호입니다. jobs 출력에 표시된 번호를 사용합니다.
공식 문서
옵션의 정확한 동작과 구현별 차이는 fg 관련 공식 문서에서 확인할 수 있습니다.









