# expr

**EXPR(1)** User Commands **EXPR(1)**

## NAME

expr - evaluate expressions

## SYNOPSIS

**expr** *EXPRESSION*
**expr** *OPTION*

## DESCRIPTION

**--help** display this help and exit
**--version**
output version information and exit
Print the value of EXPRESSION to standard output. A blank line below
separates increasing precedence groups. EXPRESSION may be:
ARG1 | ARG2
ARG1 if it is neither null nor 0, otherwise ARG2
ARG1 & ARG2
ARG1 if neither argument is null or 0, otherwise 0
ARG1 < ARG2
ARG1 is less than ARG2
ARG1 <= ARG2
ARG1 is less than or equal to ARG2
ARG1 = ARG2
ARG1 is equal to ARG2
ARG1 != ARG2
ARG1 is unequal to ARG2
ARG1 >= ARG2
ARG1 is greater than or equal to ARG2
ARG1 > ARG2
ARG1 is greater than ARG2
ARG1 + ARG2
arithmetic sum of ARG1 and ARG2
ARG1 - ARG2
arithmetic difference of ARG1 and ARG2
ARG1 * ARG2
arithmetic product of ARG1 and ARG2
ARG1 / ARG2
arithmetic quotient of ARG1 divided by ARG2
ARG1 % ARG2
arithmetic remainder of ARG1 divided by ARG2
STRING : REGEXP
anchored pattern match of REGEXP in STRING
match STRING REGEXP
same as STRING : REGEXP
substr STRING POS LENGTH
substring of STRING, POS counted from 1
index STRING CHARS
index in STRING where any CHARS is found, or 0
length STRING
length of STRING
+ TOKEN
interpret TOKEN as a string, even if it is a
keyword like ‘match’ or an operator like ‘/’
( EXPRESSION )
value of EXPRESSION
Beware that many operators need to be escaped or quoted for shells.
Comparisons are arithmetic if both ARGs are numbers, else lexicographi-
cal. Pattern matches return the string matched between \( and \) or
null; if \( and \) are not used, they return the number of characters
matched or 0.

## AUTHOR

Written by Mike Parker.

## REPORTING BUGS

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

## COPYRIGHT

Copyright © 2004 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.

## SEE ALSO

The full documentation for **expr** is maintained as a Texinfo manual. If
the **info** and **expr** programs are properly installed at your site, the
command
**info** **coreutils** **expr**
should give you access to the complete manual.
expr 5.2.1 July 2005 **EXPR(1)**

Man(1) output converted with
man2html