내 스크립트가 while 루프를 종료하는 원인

내 스크립트가 while 루프를 종료하는 원인

이 스크립트가 "프로그램이 루프를 종료하고 있습니다" 줄에서 루프를 종료하는 원인은 무엇입니까? 문맥에서는 두 번 반복되지만 내가 CM_CHECK_STATUS있는 곳에 있으면 반복되지 않습니다.

RUNLOG="log"
OUTPUTFILE="output"

LIST=$(/usr/local/bin/sshpass -f $PASSWORD_FILE  ssh -o StrictHostKeyChecking=no $USER@$IP "ls -al" 2>> $RUNLOG > $OUTPUTFILE)

PS_VALS=$(cat $OUTPUTFILE)

if [[ $? != 0 ]]
then
  echo "There was an error at:" `date` >> $RUNLOG
else
  while IFS= read -r line; 
  do
    # Check ls
    echo "... $line ..."
    CM_CHECK_STATUS=$(/usr/local/bin/sshpass -f $PASSWORD_FILE  ssh -o StrictHostKeyChecking=no $USER@$IP "ls -al")
    #program is exiting loop here
  done <<< "$PS_VALS"
  echo "finished"
fi

이를 제거 CM_CHECK_STATUS=$(/usr/local/bin/sshpass -f $PASSWORD_FILE ssh -o StrictHostKeyChecking=no $USER@$IP "ls -al")하고 루프 외부의 다른 곳에 배치하면 명령이 제대로 작동하고 루프가 예상대로 실행됩니다. 루프에서 이 명령을 사용하는 데 문제가 있습니까?

관련 정보