1 ## oils_failures_allowed: 0
2 ## compare_shells: bash mksh zsh ash
3
4 #### $RANDOM produces random numbers
5 [[ -n $RANDOM ]] && echo set
6
7 a=$RANDOM
8 b=$RANDOM
9 [[ $a -ne $b ]] && echo random
10
11 ## STDOUT:
12 set
13 random
14 ## END
15
16 #### RANDOM=seed seeds a sequence of random numbers
17
18 # mksh doesn't implement seeding
19 case $SH in mksh) exit 0 ;; esac
20
21 RANDOM=1
22 echo $RANDOM
23 echo $RANDOM
24
25 ## STDOUT:
26 ## END
27 ## OK ash STDOUT:
28 9882
29 31274
30 ## END
31 ## OK zsh STDOUT:
32 17767
33 9158
34 ## END
35 ## OK bash STDOUT:
36 16807
37 10791
38 ## END
39 ## OK osh STDOUT:
40 15503
41 22497
42 ## END
43 ## BUG mksh STDOUT:
44 ## END
45
46 #### unset RANDOM resets its special function
47
48 unset RANDOM
49 [[ -z $RANDOM ]] && echo empty
50
51 ## STDOUT:
52 empty
53 ## END