TEST(1) TEST(1) NAME test - condition command SYNOPSIS test expr DESCRIPTION _t_e_s_t evaluates the expression _e_x_p_r, and if its value is true then returns zero exit status; otherwise, a non zero exit status is returned. _t_e_s_t returns a non zero exit if there are no arguments. The following primitives are used to construct _e_x_p_r. -r file true if the file exists and is readable. -w file true if the file exists and is writable. -f file true if the file exists and is not a directory. -d file true if the file exists exists and is a directory. -s file true if the file exists and has a size greater than zero. -t [ fildes ] true if the open file whose file descriptor number is _f_i_l_d_e_s (1 by default) is associated with a terminal device. -z s1 true if the length of string _s_1 is zero. -n s1 true if the length of the string _s_1 is nonzero. s1 = s2 true if the strings _s_1 and _s_2 are equal. s1 != s2 true if the strings _s_1 and _s_2 are not equal. s1 true if _s_1 is not the null string. n1 -eq n2 true if the integers _n_1 and _n_2 are algebraically equal. Any of the comparisons -ne, -gt, -ge, -lt, or -le may be used in place of -eq. These primaries may be combined with the following operators: ! unary negation operator -a binary _a_n_d operator -o binary _o_r operator ( expr ) parentheses for grouping. -a has higher precedence than -o. Notice that all the operators and flags are separate arguments to _t_e_s_t. Notice also that parentheses are meaningful to the Shell and must be escaped. SEE ALSO sh(1), find(1) 7th Edition April 29, 1985 TEST(1)