내가 이해한 바에 따르면 Linux 또는 Unix의 셸에서 프로세스가 시작되면 해당 프로세스를 프로세스 리더로 사용하여 새 프로세스 그룹이 생성되어 해당 PID가 해당 프로세스에서 프로세스를 생성하는 데 사용되는 새 PGID와 동일해집니다.
내가 이해한 바에 따르면, 프로세스 리더가 종료되면 새로운 프로세스가 리더가 됩니다. 이 새로운 리더는 프로세스 그룹의 PGID와 동일하지 않은 PID를 갖게 됩니다. 그렇다면 그룹 내 모든 프로세스를 살펴보면 어떤 프로세스가 리더인지 어떻게 알 수 있을까요?
답변1
다음을 실행할 수 있습니다.
pgrep -g <PGID>
그러면 그룹의 모든 PID가 반환됩니다. 첫 번째는 리더입니다.
리더만 원한다면 다음을 실행할 수 있습니다.
pgrep -g <PGID> | head -1