Linux의 모든 명령은 실행 시 프로세스를 시작하며 터미널을 종료하면 자동으로 종료됩니다. SSH를 통해 프로그램을 실행하고 있는데 연결이 끊어지면 세션이 종료되고 실행된 모든 프로세스가 중지되어 엄청난 우발적 위기에 직면할 수 있다고 가정해 보겠습니다. 이러한 경우 백그라운드에서 명령을 실행하는 것이 사용자에게 매우 도움이 될 수 있으며, 여기서는 nohup 명령 그림 속으로 들어옵니다. nohup(전화 끊지 않음) 쉘/터미널에서 로그아웃한 후에도 프로세스를 실행하는 Linux 시스템의 명령입니다.
노후프 명령
일반적으로 Linux 시스템의 모든 프로세스에는 SIGHUP(신호 끊기) 터미널을 닫거나 종료한 후 프로세스를 종료하는 역할을 담당합니다. Nohup 명령은 터미널/셸을 닫거나 종료할 때 프로세스가 이 신호를 수신하지 못하도록 합니다. nohup 명령을 사용하여 작업이 시작되거나 실행되면 표준입력 사용자는 사용할 수 없으며 nohup.out 파일이 기본 파일로 사용됩니다. 표준 출력 그리고 표준 오류 . nohup 명령의 출력이 다른 파일로 리디렉션되는 경우 nohup.out 파일이 생성되지 않습니다.
Nohup 명령 구문
Nohup 명령을 사용하는 구문은 간단합니다.
CSS의 가운데 버튼
nohup command [options] &>
-
`command`>: 실행할 명령이나 스크립트를 지정합니다. -
`[options]`>: 명령의 동작을 수정하는 선택적 인수 또는 플래그입니다. -
`&`>: 명령 끝에 앰퍼샌드(&)를 배치하면 쉘이 백그라운드에서 명령을 실행하도록 지시합니다.
nohup 명령으로 작업하기
Nohup 버전 확인
Nohup의 버전을 확인하는 과정은 간단합니다. 일반적으로 `를 사용하여 시스템에 설치된 Nohup의 버전을 확인할 수 있습니다. --version`> 깃발. 다음 명령을 실행하면 됩니다.
nohup --version>
산출:
Nohup을 사용하여 프로세스 시작
Nohup을 사용하여 프로세스를 시작하려면 원하는 명령 앞에 다음을 추가하면 됩니다.nohup>. 예를 들어, 다음과 같은 bash 스크립트를 실행하려는 경우geekfile.py>Nohup을 사용하면 다음 명령을 사용합니다.
nohup bash geekfile.sh>
산출:
출력을 다음으로 리디렉션하려면 출력.txt 파일:
자바의 이중
nohup bash geekfile.sh>출력.txt>
산출:
Nohup을 사용하여 백그라운드에서 프로세스 시작
백그라운드에서 명령을 실행하려면 ' &' 기호는 명령 끝에 추가됩니다. 실행 후 백그라운드에서 명령을 실행한 후 셸 명령 프롬프트로 돌아가지 않습니다. 다음을 사용하여 다시 전경으로 가져올 수 있습니다. fg 명령.
nohup bash geekfile.sh & fg>
산출:
자바에서 문자열 뒤집기
메모: 대괄호 안의 숫자는 직업 ID 그리고 그 옆에 있는 숫자는 프로세스 ID .
백그라운드에서 여러 명령을 실행하려면
nohup 명령을 사용하면 백그라운드에서 여러 명령을 실행할 수 있습니다.
nohup bash -c 'commands'>
예:
nohup bash -c 'cal && ls'>
산출:
여기서 출력은 기본적으로 다음 위치에 저장됩니다. nohup.out . 리디렉션하려면 다음을 입력하세요.
nohup bash -c 'commands'>파일명.txt>
예:
nohup bash -c 'cal && ls'>출력.txt>
산출:
쉐타 티와리
Linux의 nohup 명령 – FAQ
이것은 nohup> Linux의 명령, 그 기능은 무엇인가요?
그만큼
nohup>명령은 끊지 않음을 의미합니다. 로그아웃하거나 터미널을 닫은 후에도 계속 실행되는 방식으로 명령이나 셸 스크립트를 실행할 수 있습니다. 이렇게 하면 터미널 세션이 종료될 때 명령이 종료되는 것을 방지할 수 있습니다.안드로이드 유튜브에서 광고 차단하기
어떻게 사용하나요? nohup> 명령?
사용
nohup>, 실행하려는 명령 앞에 추가하기만 하면 됩니다. 예를 들어:nohup command_to_run &>그만큼
&>끝에 있는 기호는 명령을 백그라운드에 배치하므로 명령이 실행되는 동안 터미널을 계속 사용할 수 있습니다.
어디에서 nohup> 명령의 출력을 보내시겠습니까?
기본적으로,
nohup>표준 출력(stdout)과 표준 오류(stderr)를 모두 이름이 지정된 파일로 리디렉션합니다.nohup.out>현재 디렉토리에 있습니다. 원하는 경우 다른 출력 파일을 지정할 수 있습니다.
사용해도 되나요 nohup> 대화형 명령이나 프로그램이 있나요?
하는 동안
nohup>일반적으로 비대화형 명령이나 스크립트와 함께 사용되지만 대화형 명령과 함께 사용할 수도 있습니다. 그러나 특히 명령이 사용자의 입력을 기대하는 경우 동작을 예측할 수 없습니다. 일반적으로 사용을 피하는 것이 좋습니다.nohup>대화형 프로그램으로
다음으로 실행 중인 명령의 상태를 어떻게 확인할 수 있습니까? nohup> ?
부터
nohup>백그라운드에서 명령을 실행하면 다음과 같은 표준 Linux 도구를 사용할 수 있습니다.ps>또는top>프로세스 상태를 확인합니다. 예를 들어:ps aux | grep>그러면 명령을 관리하거나 모니터링하는 데 사용할 수 있는 PID(프로세스 ID)를 포함하여 프로세스에 대한 정보가 표시됩니다.
결론
Linux에서는 명령을 실행할 때 일반적으로 터미널을 닫으면 명령이 중지됩니다. 하지만 함께 nohup> , 터미널을 닫은 후에도 계속 실행할 수 있습니다. 특히 원격으로 명령을 실행하고 연결이 끊어져도 명령이 중지되는 것을 원하지 않는 경우 매우 편리합니다.nohup>일반적으로 명령을 중지하는 신호로부터 명령을 보호하여 작동합니다. 그냥 추가하면 된다nohup>당신의 명령이 있기 전에 계속 진행됩니다. 명령의 출력을 파일로 보낼 수도 있습니다. 비대화형 작업에 가장 적합하며 다음과 같은 도구를 사용하여 명령 상태를 확인할 수 있다는 점을 기억하세요.ps>. 그래서,nohup>명령을 위한 안전망과 같아서, 보고 있지 않을 때에도 계속해서 명령을 내릴 수 있습니다.