Provided by: manpages-es-extra_0.8a-17_all bug

NOMBRE

       expr - evalúa expresiones

SINOPSIS

       expr expresion...
       expr {--help,--version}

DESCRIPCIÓN

       Esta  documentación  no  será  mantenida  y puede ser inexacta o incompleta.  La documentación Texinfo es
       ahora la fuente autorizada.

       Esta página de manual documenta la versión GNU de expr.  expr evalúa una expresión y escribe el resultado
       en su salida estándar.  Cada elemento de la expresión debe ser un argumento separado. Los Operandos puden
       ser números o bien cadenas. Las cadenas  no  se  entrecomillan  para   expr,  pero  puede  ser  necesario
       entrecomillarlas  para  protegerlas de la shell.  expr fuerza cualquier cosa que aparezca en una posición
       de operando a un entero o a una cadena, dependiendo de la operación que se le aplique.

       Los operdores (en orden ascendiente de prioridad) son:

       |      Toma su primer argumento si no es ni nulo ni 0, en otro caso toma su segundo argumento. Esta es la
              operación `or' habitual.

       &      Toma su primer argumento, si el argumento no es ni nulo ni 0, y toma 0 en otro caso

       <  <=  =  ==  !=  >=  >
              Compara sus argumentos y devuelve 1 si la relación es verdadera o 0  en  otro  caso.   (==  es  un
              sinónimo  de  =.)   expr  intenta  forzar  ambos  argumentos  a  números y efectúa una comparación
              numérica; si falla  cuando  intenta  forzar  algún  argumento  entonces  efectúa  una  comparación
              lexicográfica.

       +  -   Realiza operaciones aritméticas. Se fuerza la conversión de ambos argumentos a números; si esto no
              se puede hacer se produce un error.

       *  /  %
              Realiza  operaciones  aritméticas (`%' es la operación resto, como en C).  Se fuerza la conversión
              de ambos argumentos a números; si esto no se puede hacer se produce un error.

       :      Realiza la verificación de patrones. Sus argumentos se fuerzan a cadenas y el segundo se considera
              una expresión  regular, con un `^' implícito añadido al principio. Entonces el primer argumento se
              comprueba con la expresión regular. Si la comprobación es correcta  y  parte  de  la  cadena  está
              comprendida  en  `\(' y `\)', esa parte es el valor de la expresión :; en otro caso se devuelve un
              entero que es el número de caracteres verificados correctamente.  Si  la  verificación  falla,  el
              operador  :  devuelve  la cadena nula si se usan `\(' y `\)' y 0 en otro caso. Sólo se pueden usar
              los pares  `\(' and `\)'.

       Además reconoce las siguientes palabras:

       match cadena expresión
              Una forma alternativa de efectuar comprobaciones de cadenas.  Esto es lo  mismo   que  ``cadena  :
              expresión''.

       substr cadena posición longitud
              Devuelve la subcadena de  cadena comenzando en posición con longitud máxina longitud.  Si posición
              o longitud es negativo o no numérico, devuelve una cadena nula.

       index cadena clase-de-caracteres
              Devuelve la primera posición de cadena donde encuentra el primer carácter clase-de-caracteres.  Si
              no encuentra ningún carácter en  string en  clase-de-caracteres, devuelve 0.

       length cadena
              Devuelve la longitud de  cadena.

       Los  paréntesis se usan para agrupar de la forma habitual. Las palabras reservadas no se pueden usar como
       cadenas.

   OPCIONES
       Cuando GNU expr se llama con un único argumento, se reconocen las siguientes opciones:

       --help Imprime un mensaje de uso en la salida estándar y termina correctamente.

       --version
              Imprime información sobre la versión en la salida estándar y termina correctamente.

EJEMPLOS

       Para sumar 1 a una variable de shell a:

              a=`expr $a + 1`

       Lo siguiente se puede usar para imprimir la parte no directorio de un nombre de fichero guardado  en  una
       variable a (el valor de a necesita no contener  `/'):

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

       Observe las comillas de los metacaracteres de shell.

       expr devuelve el siguiente estado de fianlización:

       0 si la expresión no es ni nula ni cero,
       1 si  la expresión es nula o 0,
       2 para expresiones inválidas.

FSF                                           Utilidades Shell GNU                                       EXPR(1)