首先, bash中命令执行成功返回状态码 0, 失败返回非0状态码(如下$是终端提示符)
$ true; echo $?
bash
0
$ false; echo $?
1
$ while true; do echo good; break; done
code
good
$ while [ 1 -eq 1 ]; do echo good; break; done
good
$ while ps -ef | grep grep; do echo good; break; done
good
$ until false; do echo good; break; done
循环
good
$ until [ 1 -ne 1 ]; do echo good; break; done
good
$ until ps -ef | grep grep | grep -v grep; do echo good; break; done
good
因而可知,while表示若是条件为真则进入循环,until表示条件为真则不进入循环。终端