Testing expressions with a test
The shell builtin command test
can be used to check file types and compare expressions value. The syntax is test EXPRESSION
or the test
command is also equivalent to [ EXPRESSION ].
It returns the exit code 1
(false
) if the EXPRESSION
result is 0
, and 0
(true
) for a non-zero EXPRESSION
result.
If no EXPRESSION
is provided, the exit status is set to 1
(false).
File checks
Different kinds of checks can be done on the file using the test
command; for example, file existence test, directory test, regular file check, symbolic link check, and so on.
The options available to do various checks on a file are explained in the following table:
Option |
Description |
---|---|
-e |
fileChecks whether the file exists |
-f file |
The file is a regular fil |
-d file |
The file exists and is a directory |
-h, -L file |
The file is a symbolic link |
-b file |
The file is block special |
-c file |
The file is character special |
-S file |
The file is a socket |
-p file |
The file is a named pipe |
-k file... |