test [ arg ... ]
[ [ arg ... ] ]
       Like the system version of test.  Added for  compatibility;  use
       conditional  expressions  instead  (see the section `Conditional
       Expressions').  The main differences between the conditional ex-
       pression syntax and the test and [ builtins are:  these commands
       are not handled syntactically, so for example an empty  variable
       expansion  may  cause  an  argument to be omitted; syntax errors
       cause status 2 to be returned instead  of  a  shell  error;  and
       arithmetic operators expect integer arguments rather than arith-
       metic expressions.

       The command attempts to implement POSIX and its extensions where
       these are specified.  Unfortunately there are intrinsic ambigui-
       ties in the syntax; in particular there is  no  distinction  be-
       tween  test operators and strings that resemble them.  The stan-
       dard attempts to resolve these for small  numbers  of  arguments
       (up to four); for five or more arguments compatibility cannot be
       relied on.  Users are urged wherever possible to  use  the  `[['
       test syntax which does not have these ambiguities.
