Переменная, в которую вы читаете, является $number
, так что указывайте ее вместо $read
в вашем цикле.
Пробелы значительны, поэтому обязательно включайте пробелы до, после и между всеми элементами в цикле. (Смущает, что вы должны , а не включать пробелы в оператор присваивания, как i=0
. i = 0
неверно.)
Для правильной меры используйте двойные кавычки вокруг переменной. Это хорошая практика, так что если пользователь нажимает клавишу ввода, не набирая номер, ваш скрипт не преграждает пустую строку.
while [ "$number" != "0" ]; do
Кроме того, ваш i++
не прав. Это можно записать разными способами, самое простое из которых:
let i++