32 lines
1.0 KiB
Plaintext
32 lines
1.0 KiB
Plaintext
|
# UNFIXED BUG: hush thinks that ; && || & have the same precedence.
|
||
|
# According to this doc, && || have higher precedence than ; &.
|
||
|
# See example below.
|
||
|
# Precedence of ; is not a problem in practice. Precedence of & is.
|
||
|
#
|
||
|
#http://www.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html
|
||
|
#
|
||
|
#2.9.3 Lists
|
||
|
#
|
||
|
#An AND-OR list is a sequence of one or more pipelines separated by
|
||
|
#the operators "&&" and "||" .
|
||
|
#
|
||
|
#A list is a sequence of one or more AND-OR lists separated by the operators
|
||
|
#';' and '&' and optionally terminated by ';', '&', or <newline>.
|
||
|
#
|
||
|
#The operators "&&" and "||" shall have equal precedence and shall be
|
||
|
#evaluated with left associativity. For example, both of the following
|
||
|
#commands write solely bar to standard output:
|
||
|
#
|
||
|
# false && echo foo || echo bar
|
||
|
# true || echo foo && echo bar
|
||
|
#
|
||
|
#A ';' or <newline> terminator shall cause the preceding AND-OR list
|
||
|
#to be executed sequentially; an '&' shall cause asynchronous execution
|
||
|
#of the preceding AND-OR list.
|
||
|
|
||
|
echo First && sleep 0.2 && echo Third &
|
||
|
sleep 0.1
|
||
|
echo Second
|
||
|
wait
|
||
|
echo Done
|