Оператор цикла while позволяет выполнять тело цикла многократно до тех пор пока истинно условие.

while список_1
   do 
      список_2
   done

Пока код завершения последней команды списка_1 есть 0, выполняются команды списка_2. Если команды из списка_2 не выполнялись вообще, код завершения устанавливается равным нулю.

Цикл while может быть прерван командами "break", "continue" или "exit" помещенными в тело цикла (список2).