En este post voy a explicar una cosa muy simple: cómo concatenar cadenas en bash, el lenguaje (o como se le diga) en el que se escriben los scripts de Linux.
Concatenar cadenas es crear una nueva cadena a partir de la unión de otras. Por ejemplo, si concatenamos “Hola” y ” mundo” obtenemos una cadena que dice “Hola mundo”.
Justamente eso haremos con bash y algunas variables para concatenar cadenas.
Por cierto, también mostraré cómo concatenar cadenas y ponerles un guión bajo, pues ese fue un problema al que me enfrenté cuando programé el script para respaldar una base de datos periódicamente.
Para concatenar simplemente creamos una nueva cadena y dentro de las comillas ponemos el nombre de las otras cadenas. Veamos este ejemplo:
nombre="Luis"
nombre_mascota="Maggie"
unidos="$nombre$nombre_mascota"
echo $unidos
Dentro de comillas dobles ponemos la variable con un signo de dólar al inicio, para evaluarlas como variables.
Igualmente podemos formatear una cadena y agregar el contenido de variables dentro del mismo. Veamos otro ejemplo:
nombre="Luis"
nombre_mascota="Maggie"
# Para concatenar simplemente las ponemos en la misma cadena
saludo="Hola, me llamo $nombre y mi mascota se llama $nombre_mascota"
echo $saludo
Dentro de la cadena ponemos el nombre de las variables y bash se encargará de evaluarlas.
Habrá ocasiones en las que se desee concatenar una variable con otra, usando un guión bajo. Algo así:
nombre="Luis"
nombre_mascota="Maggie"
# Cuidado al concatenar, pues a veces hay problemas con los guiones bajos. Así:
mensaje="El correo de $nombre_mascota es $nombre_mascota_123@gmail.com"
# Salida esperada es Maggie_123 pero bash interpreta que hay una variable llamada $nombre_mascota_123
echo $mensaje
# Salida es: El correo de Maggie es @gmail.com
Si observamos bien, queremos concatenar la variable con la cadena "_123"
pero el problema es que bash toma la variable como si se llamara nombre_mascota_123
ya que el guión bajo sigue siendo un carácter válido para el nombre.
La solución es usar otra manera de evaluar la cadena, usando ahora ${}
(me recuerda a las backticks de JavaScript). Entonces el código debería quedar así:
nombre="Luis"
nombre_mascota="Maggie"
# Si queremos concatenar con guiones bajos, entonces:
mensaje="El correo de $nombre_mascota es ${nombre_mascota}_123@gmail.com"
echo $mensaje
De esta manera ponemos un delimitador de la expresión, así no hay problema si después hay un guión bajo o cualquier otro símbolo que sea válido al nombrar variables.
Si quieres ejecutar el código crea un script de Linux y ejecútalo, asegúrate de darle permisos de ejecución.
Eso es todo por hoy. Te invito a leer más sobre Linux.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.