Para imprimir valores en diferentes líneas en el script del cuerpo del correo

Para imprimir valores en diferentes líneas en el script del cuerpo del correo

A continuación se muestra el código para imprimir el contenido de los archivos presentes en el directorio. El contenido del archivo es:

apple 
banana 
grapes 
mango

nombres=()

FILES=/path_to_dir/*
for f in $FILES
do
   names+=($f)
done
result="$(cat ${names[@]})"
echo "$result"

echo "The  names are "$result"" | mailx -s "names are " [email protected]

para esto obtengo el siguiente resultado para la variable de resultado

apple 
banana 
grapes 
mango

Sin embargo, cuando imprimo "$resultado" en un correo electrónico, obtuve el siguiente resultado en el texto del correo electrónico:

apple banana grapes mango

Quiero enviar nombres por correo electrónico con varias líneas como esta:

apple 
banana 
grapes 
mango

¿Cómo lograr lo mismo?

Respuesta1

Pruebe conecho -e "The names are:\n" "$result"

La -eopción permite la \ninterpretación del signo de nueva línea; Luego, la variable se expande correctamente, al tener sus propias comillas dobles.

información relacionada