TEST("1") manual page

Table of Contents

## Name

test - check file types and compare values

## Synopsis

test EXPRESSION
test EXPRESSION ]
test OPTION

## Description

Exit with the status determined by EXPRESSION.

--help
  display this help and exit
--version
  output version information and exit

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
-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
-k FILE
  FILE exists and has its sticky bit set
-L FILE
  FILE exists and is a symbolic link
-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 is readable
-s FILE
  FILE exists and has a size greater than zero
-S FILE
  FILE exists and is a socket
-t [FD]
  file descriptor FD (stdout by default) is opened on a terminal
-u FILE
  FILE exists and its set-user-ID bit is set
-w FILE
  FILE exists and is writable
-x FILE
  FILE exists and is executable

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.

## Reporting Bugs

Report bugs to <bug-sh-utils@gnu.org>.

## See Also

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

info test

should give you access to the complete manual.

## Copyright

Copyright © 1999 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Table of Contents

- Name
- Synopsis
- Description
- Reporting Bugs
- See Also
- Copyright