Cuando lo hago
str="Hello Worldn===========n"
Obtengo el n
impreso también. ¿Cómo puedo tener nuevas líneas entonces?
Respuesta aceptada:
En bash
puedes usar la sintaxis
str=$'Hello Worldn===========n'
Comillas simples precedidas por $
es una nueva sintaxis que permite insertar secuencias de escape en cadenas.
También printf
incorporado permite guardar la salida resultante en una variable
printf -v str 'Hello Worldn===========n'
Ambas soluciones no requieren una subcapa.
Si a continuación necesita imprimir la cadena, debe usar comillas dobles, como en el siguiente ejemplo:
echo "$str"
porque cuando imprime la cadena sin comillas, las nuevas líneas se convierten en espacios.