expr man page on DigitalUNIX

Man page or keyword search:  
man Server   12896 pages
apropos Keyword Search (all sections)
Output format
DigitalUNIX logo
[printable version]

expr(1)								       expr(1)

NAME
       expr - Evaluates arguments as expressions

SYNOPSIS
       expr expression

STANDARDS
       Interfaces  documented on this reference page conform to industry stan‐
       dards as follows:

       expr:  XCU5.0

       Refer to the standards(5) reference page	 for  more  information	 about
       industry standards and associated tags.

OPTIONS
       None

OPERANDS
       The  single  expression evaluated by expr will be formed from the oper‐
       ands, as described in the DESCRIPTION section.  Each of the  expression
       operator	 symbols: (   )	  |   &	  = > >=   <   <=   !=	 +   -	 *   /
       %   : and the symbols integer and string	 in  the  DESCRIPTION  section
       must be provided as separate arguments to expr.	Expression to be eval‐
       uated, formed as explained in the DESCRIPTION section.

DESCRIPTION
       The expr command reads an expression,  evaluates	 it,  and  writes  the
       result  to  standard  output.  Within the expression argument, you must
       separate each term with spaces, precede characters special to the shell
       with a \ (backslash), and quote strings containing spaces or other spe‐
       cial characters.	 Note that expr returns 0 to indicate  a  zero	value,
       rather than the null string.  Integers can be preceded by a unary minus
       sign.  Internally, integers are treated as 64-bit or 32-bit two's  com‐
       plement numbers, depending on the word size of the hardware platform.

       The  operators  and  keywords  are  described in the following listing.
       Characters that need to be escaped are preceded	by  a  \  (backslash).
       The  list  is  in  order of increasing precedence with equal precedence
       operators grouped within {} (braces).  Returns  expression1  if	it  is
       neither	null  nor  0  (zero); otherwise, returns expression2.  Returns
       expression1 if neither expression1 nor expression2 is null nor 0;  oth‐
       erwise, returns 0.  Returns the result of an integer comparison if both
       expressions are integers; otherwise, returns the	 result	 of  a	string
       comparison.   Adds  or subtracts integer-valued arguments.  Multiplies,
       divides, or provides the remainder from the division of	integer-valued
       arguments.   Compares  expression1  with	 expression2,  which must be a
       basic regular expression, with syntax as	 described  for	 grep,	except
       that all patterns are anchored, so ^ (circumflex) (which anchors a pat‐
       tern to the beginning of a line) is not a  special  character  in  this
       context.

	      Normally, the matching operator returns the number of characters
	      matched.	Alternatively, you can	use  the  \(...\)  symbols  in
	      expression2  to  return  a  portion  of  expression1.   Provides
	      expression  grouping.   An  argument  consisting	only   of   an
	      (optional)  unary	 minus followed by digits.  A string argument.
	      Refer to the STRING OPERAND section.

       To avoid unpredictable results when using a range expression to match a
       class  of  characters,  use  a character class expression rather than a
       standard range  expression.   For  information  about  character	 class
       expressions,  see the discussion of this topic included in the descrip‐
       tion of the grep command.

   FUNCTIONS
       [Tru64 UNIX]  The expr command provides the following string-expression
       functions.   Strings  containing	 white space must be quoted.  A string
       argument should not be one of the expression operator symbols shown  in
       the  OPERANDS  section  or  one of the string function names below. You
       cannot use, for example, match "$subject" "$pattern" unless it is  con‐
       firmed  that subject and pattern do not match this violation. The first
       character of a string is position 1.  The information returned  by  all
       these functions is in the form of a string: [Tru64 UNIX]	 Compares each
       character in the second string against  each  character	in  the	 first
       string  and returns the position in the first string of the first match
       found, where the first match is the match closest to the	 beginning  of
       string1.	  [Tru64  UNIX]	 Returns  the  length  of the string argument.
       [Tru64 UNIX]  See the description of  the  :  (colon)  match  operator,
       above.	[Tru64	UNIX]  Returns	the substring of string that begins at
       character position start and is length characters long.

   STRING OPERAND
       A string argument is an argument that cannot be identified as an	 inte‐
       ger  argument or as one of the expression operator symbols shown in the
       OPERANDS section.

       The use of string arguments length, substr,  index  or  match  produces
       unspecified results.

EXIT STATUS
       The  expr  command returns the following exit values: The expression is
       neither null nor 0.  The expression is null or 0.   The	expression  is
       invalid.	 An error occurred.

EXAMPLES
       To increment a shell variable, enter: COUNT=`expr $COUNT + 1`

	      This  adds  1  to the COUNT shell variable (see sh for details).
	      To find the length of a shell variable, enter: RES=`expr	"$VAR"
	      : ".*"`

	      Note that VAR is in double quotes to avoid problems where VAR is
	      NULL or contains embedded spaces.	  The  regular	expression  is
	      also  quoted to avoid expansion by the shell. This operation can
	      also be performed as: RES=`expr length "$VAR"` To use part of  a
	      shell variable, enter: RES=`expr "$VAR" : "-*\(.*\)"`

	      This  removes leading - (dashes), if any, from VAR. If the \( \)
	      characters were omitted, RES would contain the  length  of  VAR.
	      To  find	a  character from one string in another string, enter:
	      INDEX=`expr index "Hello World!" "Wo"`

	      Note that the returned value is 5, not 7.	 The  first  match  is
	      the fifth character in string1, matching the o in string2 rather
	      than the W, which is the seventh character in string1.   Special
	      considerations: RES=`expr "x$VAR" : "x-*\(.*\)"`

	      This  succeeds  even  if	VAR has the value - (dash).  RES=`expr
	      "x$VAR" = "x="

	      This succeeds even if VAR has the value =	 (equal	 sign).	  When
	      CMD_ENV variable is set to bsd: RES=`expr 0001'

	      This  results in 0001. Otherwise the value is 1.	RES=`expr sub‐
	      str 012345 1 3'

	      This results in 012. Otherwise the value is 12.

ENVIRONMENT VARIABLES
       The following environment  variables  affect  the  execution  of	 expr:
       [Tru64 UNIX]  This variable, if set to bsd, prevents stripping of lead‐
       ing zeroes from expressions.  Provides a default value for the interna‐
       tionalization  variables	 that  are  unset or null. If LANG is unset or
       null, the corresponding value from the default locale is used.  If  any
       of  the	internationalization variables contain an invalid setting, the
       utility behaves as if none of the variables had been defined.   If  set
       to  a  non-empty	 string	 value,	 overrides the values of all the other
       internationalization variables.	Determines the locale for  the	inter‐
       pretation  of  sequences of bytes of text data as characters (for exam‐
       ple, single-byte as opposed to multibyte characters in  arguments)  and
       the  behavior of character classes in regular expressions..  Determines
       the locale for the format and contents of diagnostic  messages  written
       to  standard  error.  Determines the location of message catalogues for
       the processing of LC_MESSAGES.

SEE ALSO
       Commands:  grep(1), Bourne shell sh(1b), POSIX shell sh(1p), test(1)

       Functions:  string(3), wcscat(3)

       Standards:  standards(5)

								       expr(1)
[top]

List of man pages available for DigitalUNIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net