Test Operators

B.4 Test Operators

Table 2.5 lists the operators that are used with test and the [ ... ] construct. They can be logically combined with -a ("and") and -o ("or") and grouped with escaped parenthesis ( \( ... \) ). The string comparisons < and > are not available in versions of bash prior to 2.0.

Table B.5. Test Operators

Operator

True If...

-b file

file exists and is a block device file

-c file

file exists and is a character device file

-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 has its setgid bit set

-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

-n string

string is non-null

-O file

file exists and is owned by the effective user ID

-p file

file exists and is a pipe or named pipe (FIFO file)

-r file

file exists and is readable

-s file

file exists and is not empty

-S file

file exists and is a socket

-t N

File descriptor N points to a terminal

-u file

file exists and has its setuid bit set

-w file

file exists and is writeable

-x file

file exists and is executable, or file is a directory that can be searched

-z string

string has a length of zero

fileA -nt fileB

fileA is newer than fileB

fileA -ot fileB

fileA is older than fileB

fileA -ef fileB

fileA and fileB point to the same file

stringA = stringB

stringA equals stringB

stringA != stringB

stringA does not match stringB

stringA < stringB

stringA sorts before stringB lexicographically

stringA > stringB

stringA sorts after stringB lexicographically

exprA -eq exprB

Arithmetic expressions exprA and exprB are equal

exprA -ne exprB

Arithmetic expressions exprA and exprB are not equal

exprA -lt exprB

exprA is less than exprB

exprA -gt exprB

exprA is greater than exprB

exprA -le exprB

exprA is less than or equal to exprB

exprA -ge exprB

exprA is greater than or equal to exprB

exprA -a exprB

exprA is true and exprB is true

exprA -o exprB

exprA is true or exprB is true

 



Learning the Bash Shell
Learning the bash Shell: Unix Shell Programming (In a Nutshell (OReilly))
ISBN: 0596009658
EAN: 2147483647
Year: 1998
Pages: 104

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net