Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ expr(1) — GENIX 4.1A

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

sh(1)

test(1)



      EXPR(1)                 GENIX Programmer's Manual                 EXPR(1)



      NAME
           expr - evaluate arguments as an expression

      SYNOPSIS
           expr arg ...

      DESCRIPTION
           The arguments are taken as an  expression.   After  evaluation,  the
           result is written on the standard output.  Each token of the expres-
           sion is a separate argument.

           The operators and keywords are listed below.  The list is  in  order
           of increasing precedence, with equal precedence operators grouped.

           expr | expr
                yields the first expr if it is neither null nor `0',  otherwise
                yields the second expr.

           expr & expr
                yields the first expr if neither expr is null or `0', otherwise
                yields `0'.

           expr relop expr
                where relop is one of < <= = != >= >, yields `1' if  the  indi-
                cated  comparison  is  true,  `0'  if false.  The comparison is
                numeric if both expr are integers, otherwise lexicographic.

           expr + expr
           expr - expr
                addition or subtraction of the arguments.

           expr * expr
           expr / expr
           expr % expr
                multiplication, division, or remainder of the arguments.

           expr : expr
                The matching operator compares the string first  argument  with
                the regular expression second argument; regular expression syn-
                tax is the same as that of ed(1).  The \(...\) pattern  symbols
                can  be used to select a portion of the first argument.  Other-
                wise, the matching operator yields  the  number  of  characters
                matched (`0' on failure).

           ( expr )
                parentheses for grouping.

           Examples:

           To add 1 to the Shell variable a:

                a=`expr $a + 1`



      Printed 11/16/83                                                        1





      EXPR(1)                 GENIX Programmer's Manual                 EXPR(1)



           To find the filename part (least significant part) of  the  pathname
           stored in variable a, which may or may not contain `/':

                expr $a : '.*/\(.*\)' '|' $a

           Note the quoted Shell metacharacters.

      SEE ALSO
           sh(1), test(1)

      DIAGNOSTICS
           Expr returns the following exit codes:

                0    if the expression is neither null nor `0',
                1    if the expression is null or `0',
                2    for invalid expressions.







































      Printed 11/16/83                                                        2



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026