명령어 bg
리눅스에서 bg는 "background"를 의미하며, 터미널에서 실행 중인 작업을 백그라운드로 이동시키는 명령어입니다. 이 명령어는 리눅스의 잡 컨트롤(job control) 시스템의 일부입니다.
bg 명령어는 일반적으로 ctrl+z를 통해 일시 중지된 프로세스를 백그라운드에서 계속 실행하도록 하는 데 사용됩니다. 이 경우, 해당 프로세스는 터미널에서 직접적인 상호작용 없이 계속 실행됩니다.
예를 들어, 만약 큰 파일을 다운로드하고 있고, 이 프로세스를 일시 중지하고 다른 작업을 수행한 후에 다시 다운로드를 계속하려면 다음과 같이 할 수 있습니다:
- ctrl+z를 눌러 다운로드를 일시 중지합니다. 이 동작은 현재 실행 중인 프로세스를 중지하고, 작업 목록에 추가합니다.
- bg 명령을 실행하여 일시 중지된 프로세스를 백그라운드에서 계속 실행합니다.
또한 bg 명령은 작업 번호와 함께 사용하여 특정 작업을 백그라운드에서 실행할 수 있습니다. 예를 들어, 두 번째 작업을 백그라운드에서 실행하려면 bg %2를 실행하면 됩니다.
fg 명령은 bg 명령과 반대로 작동하며, 백그라운드에서 실행 중인 작업을 포그라운드로 가져옵니다.
사용 사례
리눅스의 bg와 fg 명령어를 사용하여 프로세스를 백그라운드와 포그라운드 사이에서 전환하는 예를 들어보겠습니다. 이를 통해 여러 작업을 동시에 실행하거나, 복잡한 작업을 백그라운드에서 실행하는 동안 다른 작업을 수행할 수 있습니다.
1. 먼저 'sleep' 명령을 사용하여 300초 동안 실행되는 프로세스를 시작합니다.
sleep 300
2. 이 프로세스가 실행되는 동안, 다른 작업을 수행하려면 ctrl+z를 눌러 프로세스를 일시 중지합니다. 이 동작은 프로세스를 작업 목록에 추가하고, 작업 번호와 함께 현재 상태를 출력합니다.
^Z
[1]+ 멈춤 sleep 300
3. 'bg' 명령을 사용하여 일시 중지된 프로세스를 백그라운드에서 계속 실행합니다.
bg
[1]+ sleep 300 &
4. 'jobs' 명령으로 현재 작업 목록을 확인할 수 있습니다.
jobs
[1]+ 실행중 sleep 300 &
5. 'fg' 명령을 사용하여 백그라운드에서 실행 중인 프로세스를 포그라운드로 가져올 수 있습니다. 이 'fg' 명령은 백그라운드에서 가장 최근에 실행된 작업을 포그라운드로 가져옵니다.
fg
sleep 300
이제 이 프로세스는 포그라운드에서 실행되며, 다른 입력을 받지 않습니다. 프로세스가 완료되거나, 다시 'ctrl+z'를 눌러 일시 중자할 때까지 터미널은 이 프로세스에 바인딩됩니다.
'bg'와 'fg' 명령을 사용하면, 한 번에 여러 작업을 관리하거나, 긴 작업을 백그라운드에서 실행하면서 다른 작업을 수행할 수 있습니다.
정리
`bg`는 "background"의 약자로 리눅스에서 작업을 백그라운드로 전환하는 명령어입니다. 일시적으로 멈춘 작업(job)을 백그라운드에서 계속 수행하게 합니다. `ctrl+z`로 일시정지된 프로세스를 `bg`로 재개하면, 프로세스는 터미널 상호작용 없이 계속 실행되며, 사용자는 다른 명령을 계속 입력할 수 있습니다. 특정 작업을 백그라운드에서 실행하려면 `bg %작업번호`를 사용합니다.
'Linuxpia > Linux 명령어' 카테고리의 다른 글
[리눅스 명령어] 루프 빠져 나가기, break (5) | 2023.07.12 |
---|---|
[리눅스 명령어] 키나 함수 순서 결합하기, bind (4) | 2023.07.11 |
리눅스 명령어, bc (4) | 2023.07.08 |
[리눅스 명령어] 특정 패턴 문자 처리, awk (9) | 2023.07.07 |
계획성 있는 작업 실행하기, atd (6) | 2023.07.06 |