blob: 05acfb863e7e393ca71f3b35e31b8d1061a703d2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
# 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
|