#!/bin/bash

sum=0
j=0
while read i
do
  let j++
  num=$(echo $i | grep -E [1-5] -o  |wc -l )
  echo "line$j number: $num"
  let sum=$sum+$num
done
echo "sum is $sum"

之前循环用的for i in `cat nocode.txt` 不好使,第三个实例过不了。我这个理解应该更简单一些,应用grep 正则和-o参数统计。