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
       expression  syntax  and the test and [ builtins are:  these com\xe2\x80\x90
       mands 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
       arithmetic expressions.

       The command attempts to implement POSIX and its extensions where
       these are specified.  Unfortunately there are intrinsic ambigui\xe2\x80\x90
       ties in the  syntax;  in  particular  there  is  no  distinction
       between  test  operators  and  strings  that resemble them.  The
       standard attempts to resolve these for small  numbers  of  argu\xe2\x80\x90
       ments  (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.
