상단의 PID가 $$와 다른가요?

상단의 PID가 $$와 다른가요?

나는 다음과 같은 작업을 해왔습니다.

#!/bin/sh

NO_START=1
STEP_SIZE=1
NO_END=100

DATE_STR=$(date +%m%d_%H%M%S)
RUN_DIR=./$DATE_STR

mkdir $RUN_DIR

echo PID = $$. See $RUN_DIR/$$.log for outputs and errors.
log_file=$RUN_DIR/$$.log; exec > $log_file 2>&1; date

for i in `seq $NO_START $STEP_SIZE $NO_END`
do
    ./c/anExternalCProgram $RUN_DIR
done

나는 오늘 에코된 PID가 에 표시된 것과 다르다는 것을 발견했습니다 top. 왜 그럴까요?

답변1

이를 디버깅하려면 필드를 top선택 하고 여기로 커서를 이동한 후 을 눌러 엽니다 . 해당 상위 프로세스 ID를 실제로 보려면 다른 필드( ) 중 하나를 선택 취소해야 할 수도 있습니다 .fPPIDSpaceVIRT

를 사용하면 PPID어떤 프로그램이 쉘을 호출했는지 알 수 있어야 합니다. 이는 아마도 프로그램의 PID일 것이며 실제로 top.

관련 정보