Как вставить новую строку в сообщение электронной почты с помощью команды linux mail? - программирование
Подтвердить что ты не робот

Как вставить новую строку в сообщение электронной почты с помощью команды linux mail?

как вставить новую строку в электронную почту с помощью команды linux mail?

echo "Hi xxx, would you tell me something?\\n thanks!\\n -xxx" | mail -s "subject" [email protected]

В письме отображается буква "\n", а не новая строка, как его исправить?

4b9b3361

Ответ 1

Попробуйте использовать echo -e

echo -e "Hello \n World"

Вы можете ввести man echo из командной строки, чтобы узнать больше.

Ответ 2

С mailx, если вы отправляете электронное письмо пользователю oultook, вы можете добавить 2 пробела в начале каждой строки.

{ echo "Hi xxx, would you tell me something" ; echo "thanks!" ; echo "-xxx" } | sed 's/^/  /g' | mailx -s "subject" [email protected]

Ответ 3

При использовании почтовой команды принятый ответ не помог мне, я должен был использовать

\r

Вся моя команда

mail -s "SUBJECT" -aFrom:"[email protected] "[email protected]" <<< $( echo -e "Line1\rLine2")

Ответ 4

Я столкнулся с этой проблемой и разрешил ее, окружив кавычками переменную, в которую я входил в mailx.

Я начал со списка процессов из ps i.e. list="$(ps |grep some_process)".

Затем, когда я попытался отправить сообщение следующим образом, строки новой строки были стерты:

echo $body | mailx -s "${subject}" [email protected]

Но, просто обернув $body кавычками, сохранили строки новой строки:

echo "$body" | mailx -s "${subject}" [email protected]