Builtin test command:  testeval

SYNTAX:
	test {many parameters}
	[ {many parameters} ]

RETURN VALUES:
	1	True.
	0	False.
	-1	Error.

OPTIONS:
File testing unary prefix functions:
	-b file			True if file exists and is block special.
	-c file			True if file exists and is character special.
	-d file			True if file exists and is a directory.
	-f file			True if file exists and is a regular file.
	-g file			True if file exists and is set-group-id.
	-k file			True if file has its ``sticky'' bit set.
	-p file			True if file exists and is a named pipe.
	-r file			True if file exists and is readable.
	-s file			True if file exists and has a size greater
				than zero.
	-t [fd]			True if fd is opened on a terminal. If fd is
				omitted, it defaults to 1 (standard output).
	-u file			True if file exists and its set-user-id bit
				is set.
	-w file			True if file exists and is writable.
	-x file			True if file exists and is executable.

String testing binary functions:
	str1 =	str2		True if the strings are equal.
	str1 != str2		True if the strings are not equal

Interget value testing binary functions:
	iexpr -eq iexpr		True if values are equal.
	iexpr -ne iexpr		True if values are not equal.
	iexpr -gt iexpr		True if value1 is greater than value2.
	iexpr -ge iexpr		True if value1 is greater or equal than value2.
	iexpr -lt iexpr		True if value1 is less than value2.
	iexpr -le iexpr		True if value1 is less or equal than value2.

File comparison binary functions:
	file1 -nt file2		True if	file1's mtime is newer than file2's
	file1 -ot file2		True if	file1's mtime is older than file2's
	file1 -ef file2		True if both files have same inode, and device

Logical functions:
	! expr			Unary NOT
	expr -a expr		Binary AND
	expr -o expr		Binary OR
	( expr )		Parenthesis

NOTES:

	This is basically the shell "[" a.k.a. "test" program.
