while 루프가 조건을 무시하고 영원히 계속되는 이유는 무엇입니까?

while 루프가 조건을 무시하고 영원히 계속되는 이유는 무엇입니까?

내 2개의 CPU 코어의 온도 데이터를 기록하고 파일 길이가 10000줄이 될 때까지 파일로 보내도록 되어 있는 다음 bash 스크립트가 있지만 루프 조건이 아무 것도 하지 않고 계속해서 10000을 초과하는 동안 10000줄이 있습니다. 좋아요. 왜 이런 일이 일어나는지 이해할 수 있는 사람이 있나요?

lc=`wc -l temps.log2 | grep -o '[0-9]*'`
while [ $lc -lt 10000 ]
do
  sensors | grep ^Core |\
  (
    DATE=$(date +%m/%d/%y-%H:%M:%S)
    while read LINE
    do
      echo "$DATE $LINE"
    done
  ) >> temps.log2
done

답변1

$lc루프에서 증가하지 않음

관련 정보