test(1)
NAME
test, [ - test for a condition
SYNOPSIS
test expr
[ expr ]
EXAMPLES
test -r file # See if file is readable
DESCRIPTION
Test checks to see if files exist, are readable, etc. and returns an exit
status of zero if true and nonzero if false. The legal operators are
-r file true if the file is readable
-w file true if the file is writable
-x file true if the file is executable
-f file true if the file is regular file
-d file true if the file is a directory
-c file true if the file is a character device
-b file true if the file is a block device
-p file true if the file is a named pipe
-h file true if the file is a symlink (always false)
-L file synonym for -h (also always false)
-s file true if the file exists and has a size > 0
-t fd true if file descriptor fd (default 1) is a terminal
-z s true if the string s has zero length
-n s true if the string s has nonzero length
s1 = s2 true if the strings s1 and s2 are identical
s1 != s2 true if the strings s1 and s2 are different
m -eq m true if the integers m and n are numerically equal
The operators -gt, -ge, -ne, -le, and -lt may be used as well. These
operands may be combined with -a (Boolean and), -o (Boolean or), !
(negation). The priority of -a is higher than that of -o. Parentheses are
permitted, but must be escaped to keep the shell from trying to interpret
them.
SEE ALSO
expr(1), sh(1).