Web | This Site

Unix for Beginners
Unix Shell Programming
Advanced Unix
Unix Useful References
Unix Useful Resources
Selected Reading
© 2011 TutorialsPoint.COM

| Home |  | References |  | Discussion Forums |  | About TP

# test - Unix, Linux Command

# NAME

test - check file types and compare values

# SYNOPSIS

test EXPRESSION
test

[ EXPRESSION ]
[ ]
[ OPTION

# DESCRIPTION

Exit with the status determined by EXPRESSION.

Tag | Description
--- | ---
--help | display this help and exit
--version
| output version information and exit
An omitted EXPRESSION defaults to false. Otherwise, EXPRESSION is true or false and sets exit status. It is one of:
( EXPRESSION )
| EXPRESSION is true
! EXPRESSION
| EXPRESSION is false
EXPRESSION1 -a EXPRESSION2
| both EXPRESSION1 and EXPRESSION2 are true
EXPRESSION1 -o EXPRESSION2
| either EXPRESSION1 or EXPRESSION2 is true
-n STRING
| the length of STRING is nonzero
STRING | equivalent to -n STRING
-z STRING
| the length of STRING is zero
STRING1 = STRING2
| the strings are equal
STRING1 != STRING2
| the strings are not equal
INTEGER1 -eq INTEGER2
| INTEGER1 is equal to INTEGER2
INTEGER1 -ge INTEGER2
| INTEGER1 is greater than or equal to INTEGER2
INTEGER1 -gt INTEGER2
| INTEGER1 is greater than INTEGER2
INTEGER1 -le INTEGER2
| INTEGER1 is less than or equal to INTEGER2
INTEGER1 -lt INTEGER2
| INTEGER1 is less than INTEGER2
INTEGER1 -ne INTEGER2
| INTEGER1 is not equal to INTEGER2
FILE1 -ef FILE2
| FILE1 and FILE2 have the same device and inode numbers
FILE1 -nt FILE2
| FILE1 is newer (modification date) than FILE2
FILE1 -ot FILE2
| FILE1 is older than FILE2
-b FILE | FILE exists and is block special
-c FILE | FILE exists and is character special
-d FILE | FILE exists and is a directory
-e FILE | FILE exists
-f FILE | FILE exists and is a regular file
-g FILE | FILE exists and is set-group-ID
-G FILE | FILE exists and is owned by the effective group ID
-h FILE | FILE exists and is a symbolic link (same as -L)
-k FILE | FILE exists and has its sticky bit set
-L FILE | FILE exists and is a symbolic link (same as -h)
-O FILE | FILE exists and is owned by the effective user ID
-p FILE | FILE exists and is a named pipe
-r FILE | FILE exists and read permission is granted
-s FILE | FILE exists and has a size greater than zero
-S FILE | FILE exists and is a socket
-t FD | file descriptor FD is opened on a terminal
-u FILE | FILE exists and its set-user-ID bit is set
-w FILE | FILE exists and write permission is granted
-x FILE | FILE exists and execute (or search) permission is granted

Except for -h and -L, all FILE-related tests dereference symbolic links. Beware that parentheses need to be escaped (e.g., by backslashes) for shells. INTEGER may also be -l STRING, which evaluates to the length of STRING.

NOTE: your shell may have its own version of test and/or [, which usually supersedes the version described here. Please refer to your shell’s documentation for details about the options it supports.

# AUTHOR

Written by Kevin Braunsdorf and Matthew Bradburn.

# REPORTING BUGS

Report bugs to <bug-coreutils@gnu.org>.

# COPYRIGHT

Copyright © 2006 Free Software Foundation, Inc.
This is free software. You may redistribute copies of it under the terms of the GNU General Public License <http://www.gnu.org/licenses/gpl.html>. There is NO WARRANTY, to the extent permitted by law.

# SEE ALSO

test is maintained as a Texinfo manual. If the info and test programs are properly installed at your site, the command

Tag | Description
--- | ---
| info test

should give you access to the complete manual.

Advertisement

Online Image Processing

Indian Baby Names