为什么我的 while 循环会忽略条件并永远继续下去?

为什么我的 while 循环会忽略条件并永远继续下去?

我有以下 bash 脚本,该脚本应该记录我的 2 个 cpu 核心的温度数据并将其发送到文件,直到文件长为 10000 行,但是 10000 行 while 循环条件没有执行任何操作,并且它一直持续超过 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没有在循环中递增

相关内容