¿Qué hace el signo de porcentaje en las cadenas de shell de Linux?

¿Qué-hace-el-porcentaje-de-signo-en-linux-shell-strings-hacer-00

Cuando esté en el proceso de aprender a usar completamente el shell de Linux, es posible que sienta curiosidad por saber cuánto puede manipular cadenas para obtener los mejores resultados. Con eso en mente, la publicación de preguntas y respuestas de SuperUser de hoy tiene la respuesta a la pregunta de un lector curioso.

La sesión de preguntas y respuestas de hoy nos llega por cortesía de SuperUser, una subdivisión de Stack Exchange, un grupo de sitios web de preguntas y respuestas impulsado por la comunidad.

La pregunta

El lector de superusuario Nissim Kaufmann quiere saber qué hace el signo de porcentaje en las cadenas de shell de Linux:

Cuando se usa el shell de Linux, ¿qué hace el signo de porcentaje (%)? Por ejemplo:

¿Qué-hace-el-porcentaje-de-inicio de sesión-en-linux-shell-strings-hacer-01

¿Qué hace el signo de porcentaje en las cadenas de shell de Linux?

La respuesta

El colaborador superusuario Marek Rost tiene la respuesta para nosotros:

Cuando se usa el signo de porcentaje (%) en el patrón $ {variable% substring} , devolverá el contenido de la variable con la menor aparición de subcadena eliminada de la parte posterior de la variable.

Esta función admite patrones de comodines, por eso acepta un asterisco (estrella) como sustituto de cero o más caracteres. Cabe mencionar que esto es específico de Bash. Otros shells de Linux no necesariamente contienen esta función.

Si desea obtener más información sobre la manipulación de cadenas en Bash, le sugiero que lea la siguiente página, Guía avanzada de scripts de Bash: Capítulo 10. Manipulación de variables . Entre muchas otras funciones útiles, explica lo que hace un signo de porcentaje doble (%%), por ejemplo.

Olvidé mencionar que cuando se usa en el patrón $ ((variable% number)) o $ ((variable1% $ variable2)) , el carácter de signo de porcentaje (%) funcionará como un operador de módulo.

Cuando el signo de porcentaje (%) se usa en diferentes contextos, debe reconocerse solo como un carácter regular.


¿Tiene algo que agregar a la explicación? Habla en los comentarios. ¿Quieres leer más respuestas de otros usuarios de Stack Exchange expertos en tecnología? Consulte el hilo de discusión completo aquí .

Crédito de la imagen: Capturas de pantalla de Linux (Flickr)