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- 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- 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- 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.