while 문은 일반적으로 다음과 같은 형식으로 사용됩니다:
while command-list1 do command-list2 done
이것은 command-list1 에서 지정한 명령들을 실행해서, 그것의 리턴값이 0 이면, command-list2에서 지정한 명령들을 실행합니다.
그리고는 다시 command-list1에서 지정한 명령들을 실행하고, 이렇게 반복해서, 리턴값이 0 이외의 값을 가지게 되면, 그 반복을 중단합니다.
until 문의 일반적으로 다음과 같은 형식으로 사용됩니다:
until command-list1 do command-list2 done
이것은 while 문과 똑같은 진행을 하나, 리턴값이 0이 아닐 동안 반복하고, 0 이면 그 반복을 중단합니다.
while/until 문 자체의 리턴값은, 마지막 실행된 command-list2 명령의 리턴값으로 지정됩니다. 만약, 이들 문 실행 중에, 아무런 명령도 수행하지 못했다면, 0이 아닌 값을 리턴합니다.