>
bash 쉘에서 nohup mycommand & 를 만들려면  고아 프로세스에서 명령을 실행 한 후 bash 쉘을 닫습니다. 부모 셸을 종료하지 않고 할 수 있습니까? 프로세스 호출을위한 시스템 호출 fork () 및 exit ()와 유사한 일부 쉘 명령이 있는지 알고 싶습니다.

  • 답변 # 1

    고아 프로세스를 만들려면 부모가 죽어야합니다. 껍질이 죽지 않게하려면 껍질이 고아의 부모가되어서는 안됩니다. 가장 간단한 방법은 쉘 포크를 자식 프로세스로 만들어 고아가 될 프로세스를 포크하는 것입니다. 이 이중 포크는 Wikipedia 기사 소개에 설명 된대로 데몬이 시작되는 방식입니다.

    쉘에서 이미 자식 프로세스를 만드는 방법을 알고있다 : & . 동일한 셸의 포크 인 자식 프로세스를 만들고 백그라운드 프로세스를 차례로 포크하려면 파서가 사용자를 이해하도록해야합니다.

    { nohup mycommand & } &
    
    

관련 자료

  • 이전 cgroups - cgconfigconf 파일이 없습니다
  • 다음 colors - head -c와 같은 것을 사용하지만 컬러 문자로 작업하는 방법