Как добавить символ новой строки (\n) между двумя переменными Unix?
Я попробовал сделать следующее, но текст печатается в одну строку, а не отдельными строками.
h=hello
w=world
c="$h"$'\n'"$w"
echo $c
Output: hello world
решение1
Ваше решение работает, но вам необходимо использовать кавычки $c
в выражении echo, чтобы расширить его так, как вам нужно.
Так:
h=hello
w=world
c="$h"$'\n'"$w"
echo "$c"
Однако это почти наверняка проблема xy. Чего вам в конечном итоге нужно достичь?
Было бы гораздо лучше просто сделать:
h=hello
w=world
printf '%s\n' "$h" "$w"
В качестве альтернативы вы можете использовать -e
опцию echo:
h=hello
w=world
c="${h}\n${w}"
echo -e "$c"