blob: 29f9471d628c8e4a643c58df7fedfbb792effb17 (
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
# ++ and -- are not inc/dec operators on non-variables, they are + + and - - sequences
( echo $(( --7 )) )
( echo $(( ++7 )) )
( echo $(( -- 7 )) )
( echo $(( ++ 7 )) )
#ash# ((++array[0] ))
#ash# echo 1 $array
#ash# (( ++ array[0] ))
#ash# echo 2 $array
#ash# (( ++a ))
#ash# echo 1 $a
#ash# (( ++ a ))
#ash# echo 2 $a
#ash# (( --a ))
#ash# echo 1 $a
#ash# (( -- a ))
#ash# echo 0 $a
a=0
echo 5 $(( 4 + ++a ))
echo 1 $a
# this is treated as 4 + ++a
echo 6 $(( 4+++a ))
echo 2 $a
a=2
# this is treated as 4 - --a
echo 3 $(( 4---a ))
echo 1 $a
a=1
echo 4 $(( 4 - -- a ))
echo 0 $a
#ash# (( -- ))
# -- is not a dec operator on non-variable, it is the - - sequence
echo $(( ---7 ))
( echo $(( -- - 7 )) )
#ash# (( ++ ))
# ++ is not a inc operator on non-variable, it is the + + sequence
echo $(( ++7 ))
( echo $(( ++ + 7 )) )
# bash 3.2: -7
#ash# echo -7 $(( ++-7 ))
# bash 3.2: -7
#ash# echo -7 $(( ++ - 7 ))
# bash 3.2: 7
#ash# echo 7 $(( +--7 ))
# bash 3.2: 7
#ash# echo 7 $(( -- + 7 ))
|