KornShell에서 $$
의 의미는 무엇입니까? 프로세스 ID와 관련이 있다고 생각하지만 그 정확한 의미를 알고 싶습니다.
답변
$$
은 ksh 프로세스 자체의 프로세스 ID입니다. $PPID
은 상위 프로세스 ID입니다.
여기는 ksh (93) documentation for special parameters입니다 (스크롤해야 볼 수 있습니다). 같은 정보 for ksh88.
프로세스 ID로 임시 이름을 만드는 데 사용됩니다. 파일 이름이 필요하지만 그 이름은 현재 사용중인 프로세스에 대해 고유해야합니다. 따라서 한 명 이상의 사용자가 동일한 ksh 스크립트를 실행하면 서로 밟을 수 없습니다.
$$는 bash, sh 및 기타 UN * X 쉘에 있습니다.
어떤 프로세스 id, ksh 자체, 부모 또는 자식? –
ksh 스크립트를 실행하면 ksh 포크와 자식 프로세스가 자체 프로세스로 실행됩니다. "$ ./script"로 실행하면 현재 프로세스에서 인라인으로 실행됩니다. –
@Philip : 응? 분명히 당신은 "./script"를 의미합니다. 현재 쉘에서 실행됩니다. –
고마워 마틴, 내 대답이 있어요 :) –