2
스크립트가 프로세스를 시작한 후 $!
과 함께 PID를 수집 한 직후 시스템에서 스크립트가 프로세스를 시작한 시점과 스크립트가 프로세스를 시작한 시점 사이에 프로세스가 시작된 경우 잘못된 PID를 얻을 수 있습니까? PID가 $!
입니까?
스크립트가 프로세스를 시작한 후 $!
과 함께 PID를 수집 한 직후 시스템에서 스크립트가 프로세스를 시작한 시점과 스크립트가 프로세스를 시작한 시점 사이에 프로세스가 시작된 경우 잘못된 PID를 얻을 수 있습니까? PID가 $!
입니까?
특수 변수특수 변수는 현재 쉘이 시작한 마지막 하위 프로세스의 PID를 보유합니다. 시스템의 다른 프로세스에서 발생하는 작업으로 수정되지 않습니다. 당신 자신이 값을 수집하기 전에 새 자식 프로세스를 시작하는 경우가 때마다 덮어 있기 때문에
$!
은 잘못 될 수 있습니다. 예를 들어, 다음은 "processX"의 PID 손실되고 "processY"의 PID가 인쇄됩니다 :
processX &
processY &
echo Child process PID: $!