pkill -P $ID는 종료 시 작동합니다. - -$ID는 작동하지 않습니다.

pkill -P $ID는 종료 시 작동합니다. - -$ID는 작동하지 않습니다.

Linux(우분투)에서 프로세스 그룹을 생성하고 종료하려고 합니다.

프로세스 그룹을 종료하려고 하는데 pkill -P $ID는 작동하지만 Kill -- -$ID는 작동하지 않는다는 사실 때문에 미칠 것 같습니다. 이외의 경우 이 스크립트 Kill ---$ID는 예상대로 작동하고 프로세스와 하위 프로세스를 종료하지만 이 경우 프로세스를 찾을 수 없다고 보고하는 반면 pkill -P는 예상대로 그룹을 종료합니다.

pkill은 작동하지만 kill은 작동하지 않는 이유

file="${@:1:1}"
params="${@:2}"

echo $file 
echo $params


while true ; do
  echo +Master $BASHPID

  (
    echo ++Slave $BASHPID

    running=''
    stat=''

          while true; do
            echo RUNNING $running
            echo +++Cycle $BASHPID
            sleep 1
            new_stat="`stat --printf='%Y' "$file"`"
            ! [ "$stat" = "$new_stat" ] && {
# HERE IS MY ISSUE I DO NOT UNDERSTAND WHY kill -- -"$running" reports process not found . Especially when doing ps f clearly shows both the proper hierarchy and that the PID is as expected . 
              kill -0 "$running"   && pkill -TERM -P "$running"
              stat="$new_stat"
              echo CHANGE
              ( /bin/bash "$file" ${params[@]} ) &
              running=$!
            }

          done  &
          wait

    echo Slave/Cycle  clear 
  ) &
  wait

done


trap "-" EXIT

#stat="`ls`"

파일 실행

#!/bin/bash

echo ++++sub $BASHPID

(
  while true; do 
    echo +++++tick  $BASHPID
    sleep 5
  done 
) &

wait

echo SUB/tick clear

관련 정보