シェルスクリプトでテキストファイルの数を計算する方法

シェルスクリプトでテキストファイルの数を計算する方法

以下を含むテキストファイルがありますt1.txt

300
400
500
600

今、このテキストで450未満の数字がいくつかあることを確認したいと思います。次のコードを提供します。

b=0
for i in $(cat t1.txt)
do
  if [$i -lt 450]
  then
    ((b=b+1))
  fi
done
echo b

しかし、うまくいきません。

どうすればいいですか?ありがとうございます。

ベストアンサー1

b=0
for i in $(cat t1.txt)
do
  # convert float to int
  i=$(echo $i | cut -d. -f1)
  if [ $i -lt 450 ] # comment: need spaces next to the the square brackets
  then
    ((b=b+1))
  fi
done
echo $b  # comment: need to $

おすすめ記事