summaryrefslogtreecommitdiff
path: root/examples/functions/ksh-compat-test
blob: feee965d5c5a8e60f2678b6246a431623544665e (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
#
# replacements for test/[ that do arithmetic expansion on the operands to
# the arithmetic operators, like ksh.
#
function test()
{
        local -i n1 n3
        case "$#" in
        3)      case "$2" in
                -lt|-gt|-eq|-ne|-le|-ge)        n1=$(( $1 ))
                                                n3=$(( $3 ))
                                                builtin test "$n1" $2 "$n3"
                                                return $?;;
                *)      builtin test "$@" ;;
                esac;;                                                          
        *)      builtin test "$@" ;;
        esac
}

function [()
{
        local -i n1 n3
        case "$#" in
        4)      case "$2" in
                -lt|-gt|-eq|-ne|-le|-ge)        n1=$(( $1 ))
                                                n3=$(( $3 ))
                                                builtin [ "$n1" $2 "$n3" ]
                                                return $?;;
                *)      builtin [ "$@" ;;
                esac;;                                                          
        *)      builtin [ "$@" ;;
        esac
}

q=7

[ q -lt 10 ]
echo $?
[ $q -lt 10 ]
echo $?