¿Qué hace el signo de porcentaje en las cadenas de shell de Linux?
Cuando esté en el proceso de aprender a usar el shell de Linux por completo, 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 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 signo de porcentaje en las cadenas de shell de Linux??
La respuesta
Marek Rost, colaborador de Superusuarios, tiene la respuesta para nosotros:
Cuando se usa el signo de porcentaje (%) en el patrón $ variable% subcadena, devolverá el contenido de la variable con la aparición más corta de subcadena eliminada de la parte posterior de la variable.
Esta función admite patrones de comodín, 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 recomiendo 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 doble signo de porcentaje (%%), por ejemplo.
Olvidé mencionar que cuando se usa en el patrón $ ((número variable%)) o $ ((variable1% $ variable2)), el carácter de signo de porcentaje (%) funcionará como un operador de módulo.
Cuando el signo de porcentaje (%) se utiliza en diferentes contextos, debe reconocerse como un carácter regular solamente.
¿Tienes algo que agregar a la explicación? Apaga el sonido en los comentarios. ¿Quieres leer más respuestas de otros usuarios de Stack Exchange con experiencia en tecnología? Echa un vistazo a la discusión completa aquí.
Crédito de la imagen: Linux Screenshots (Flickr)