FreeBSD Manual Pages
EXPR(1) General Commands Manual EXPR(1) NAME expr -- evaluate expression SYNOPSIS expr expression DESCRIPTION The expr utility evaluates expression and writes the result on standard output. All operators and operands must be passed as separate arguments. Sev- eral of the operators have special meaning to command interpreters and must therefore be quoted appropriately. All integer operands are in- terpreted in base 10. Arithmetic operations are performed using signed integer math. Operators are listed below in order of increasing precedence; all are left-associative. Operators with equal precedence are grouped within { } symbols. expr1 | expr2 Return the evaluation of expr1 if it is neither an empty string nor zero; otherwise, returns the evaluation of expr2. expr1 & expr2 Return the evaluation of expr1 if neither expression evaluates to an empty string or zero; otherwise, returns zero. expr1 {=, >, >=, <, <=, !=} expr2 Return the results of integer comparison if both arguments are integers; otherwise, returns the results of string comparison using the locale-specific collation sequence. The result of each comparison is 1 if the specified relation is true, or 0 if the relation is false. expr1 {+, -} expr2 Return the results of addition or subtraction of integer-valued arguments. expr1 {*, /, %} expr2 Return the results of multiplication, integer division, or re- mainder of integer-valued arguments. expr1 : expr2 The ":" operator matches expr1 against expr2, which must be a regular expression. The regular expression is anchored to the beginning of the string with an implicit "^". If the match succeeds and the pattern contains at least one regular expression subexpression "\(...\)", the string corre- sponding to "\1" is returned; otherwise the matching operator returns the number of characters matched. If the match fails and the pattern contains a regular expression subexpression the null string is returned; otherwise 0. Parentheses are used for grouping in the usual manner. EXAMPLES 1. The following example adds one to the variable a. a=`expr $a + 1` 2. The following example returns the filename portion of a pathname stored in variable a. The // characters act to eliminate ambigu- ity with the division operator. expr //$a : '.*/\(.*\)' 3. The following example returns the number of characters in variable a. expr $a : '.*' DIAGNOSTICS The expr utility exits with one of the following values: 0 the expression is neither an empty string nor 0. 1 the expression is an empty string or 0. 2 the expression is invalid. SEE ALSO sh(1), test(1) STANDARDS The expr utility conforms to IEEE Std 1003.2 ("POSIX.2"). GNU May 10, 2002 EXPR(1)
NAME | SYNOPSIS | DESCRIPTION | EXAMPLES | DIAGNOSTICS | SEE ALSO | STANDARDS
Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=expr&sektion=1&manpath=FreeBSD+4.9-RELEASE>
