Técnicas esenciales de sustitución de cadenas en Bash
La sustitución de cadenas en Bash ofrece una variedad de técnicas que puedes utilizar para manipular cadenas. Exploremos algunas de las técnicas esenciales:
Puedes extraer una subcadena específica de una cadena más larga utilizando la siguiente sintaxis:
${variable_name:start_index:length}
Aquí, start_index es la posición donde comienza la subcadena y length es el número de caracteres a extraer.
Ejemplo:
text="LabEx is a leading AI research company"
echo ${text:8:2} ## Output: is
Coincidencia y reemplazo de patrones
Para reemplazar un patrón dentro de una cadena, puedes utilizar la siguiente sintaxis:
${variable_name/pattern/replacement}
Esto reemplazará la primera aparición del pattern con el valor de replacement.
Ejemplo:
text="LabEx is a leading AI research company"
echo ${text/LabEx/LabAI} ## Output: LabAI is a leading AI research company
También puedes utilizar la sintaxis // para reemplazar todas las apariciones del patrón:
${variable_name//pattern/replacement}
Ejemplo:
text="LabEx is a leading AI research company from LabEx"
echo ${text//LabEx/LabAI} ## Output: LabAI is a leading AI research company from LabAI
Expansión del nombre de la variable
La sustitución de cadenas en Bash también te permite expandir nombres de variables dentro de una cadena. Esto puede ser útil cuando necesitas acceder dinámicamente a los valores de las variables.
Ejemplo:
name="John"
echo "Hello, ${name}!" ## Output: Hello, John!
Sustitución condicional
La sustitución de cadenas en Bash admite operaciones condicionales, donde puedes proporcionar valores alternativos en función de la existencia o no de una variable.
${variable_name:-default_value}
${variable_name:+alternative_value}
La primera forma, ${variable_name:-default_value}, utilizará el default_value si la variable_name no está definida o está vacía.
La segunda forma, ${variable_name:+alternative_value}, utilizará el alternative_value si la variable_name está definida y no está vacía.
Ejemplo:
name=""
echo "Hello, ${name:-Guest}!" ## Output: Hello, Guest!
name="John"
echo "Hello, ${name:+Mr. $name}!" ## Output: Hello, Mr. John!
Estas son solo algunas de las técnicas esenciales de sustitución de cadenas en Bash. En la siguiente sección, exploraremos aplicaciones prácticas de estas técnicas.