質問させて下さい

#!/bin/bash
num="1
2
3
4
5"
num2=3

while true ; do
echo "$num" | while read line; do
if [ "$line" -eq "$num2" ]; then
echo $line
break 2
fi
done
done

このスクリプトがbreakできないのですが、どこに間違いがあるのでしょうか?
/bin/bash を zsh に変えれれば動きます。