Expr
expr es un programa en sistemas operativos similares a UNIX que evalúa el valor de una expresión e imprime el resultado en la salida estándar. Cada token de expresión debe ser un argumento independiente. Los operandos pueden ser números o cadenas. No es necesario citar los operandos de cadena, aunque esto puede ser necesario para evitar que el shell los interprete. expr determina el tipo del operando (entero o cadena) por la operación que se le aplica.
Uso
- expresión expresión...
- expr {--ayuda,--versión}
Operadores soportados
Los siguientes operadores son válidos (en orden ascendente de precedencia):
- | - disyunción
- & - conjunción
- < <= = == != >= > - Compara argumentos y devuelve 1 si la operación relacional es verdadera, 0 en caso contrario. (== es un sinónimo de =.) expr intenta convertir ambos argumentos en un tipo numérico y realizar una comparación numérica; si la conversión falla en al menos un argumento, se realiza una comparación lexicográfica (cadena)
- + - : realiza las operaciones aritméticas especificadas. Antes de eso, ambos argumentos se convierten en un tipo numérico; si esto no se puede hacer, se muestra un mensaje de error
- * / % : realiza las operaciones aritméticas especificadas ("%" es una operación de módulo, como en C ). Antes de eso, ambos argumentos se convierten en un tipo numérico; si esto no se puede hacer, se muestra un mensaje de error
- : — búsqueda por patrón. Ambos argumentos se convierten en un tipo de cadena, y el segundo se trata como una expresión regular con un carácter "^" prefijado implícitamente. Después de eso, el primer argumento es buscado por el segundo como un patrón. Si se encuentra una coincidencia y una parte de la cadena está marcada con los símbolos "(" y ")", entonces el valor de la operación: es esta parte; de lo contrario, se devuelve un número entero igual al número de caracteres que coinciden con el patrón. Si no se encuentra una coincidencia y parte de la cadena está marcada con los símbolos "(" y ")", entonces el resultado de la operación: es una cadena vacía; de lo contrario, 0. Al especificar un patrón, solo un par de corchetes " (" y ")" se puede utilizar.
Además, se reconocen las siguientes palabras clave:
- Match string regex es otra forma de buscar por patrón. Esta expresión es idéntica a "cadena: expresión_regular"
- longitud de la posición de la cadena substr : devuelve una subcadena en una cadena que comienza en la posición especificada y no es mayor que la longitud especificada. Si la posición o la longitud son negativas o no son un número, devuelve una cadena vacía
- index string character-class : devuelve la posición en la cadena donde se encontró por primera vez el carácter de character-class. Si no se encuentra tal carácter, devuelve 0
- cadena de longitud - devuelve la longitud de la cadena
Los paréntesis se pueden utilizar para agrupar. Las palabras clave no se pueden utilizar como operandos de cadena.
Enlaces
Comandos Unix |
---|
|
GNU Coreutils |
---|
Utilidades de archivo |
|
---|
Utilidades de texto |
|
---|
Utilidades de shell |
|
---|
|