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 $SH -c 'RANDOM=seed; echo $RANDOM $RANDOM' > one.txt
22 $SH -c 'RANDOM=seed; echo $RANDOM $RANDOM' > two.txt
23 diff -u one.txt two.txt
24 echo diff=$?
25
26 ## STDOUT:
27 diff=0
28 ## END
29 ## BUG mksh STDOUT:
30 ## END
31
32 #### unset RANDOM resets its special function
33
34 unset RANDOM
35 [[ -z $RANDOM ]] && echo empty
36
37 ## STDOUT:
38 empty
39 ## END