在变量之间添加换行符

在变量之间添加换行符

如何在两个 Unix 变量之间添加换行符 (\n)?

我尝试了以下操作,但它打印在一行中而不是单独的行中。

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选项来回显:

h=hello
w=world
c="${h}\n${w}"
echo -e "$c"

相关内容