如何打印新行?这只会打印\n:

$ echo -e "Hello,\nWorld!"
Hello,\nWorld!

当前回答

您还可以执行以下操作:

echo "hello
world"

这在脚本内部和命令行中都有效。

在命令行上,按Shift+Enter键在字符串内进行换行。

这适用于我的macOS和Ubuntu 18.04(仿生海狸)系统。

其他回答

str='hello\nworld'
$ echo | sed "i$str"
hello
world

您还可以执行以下操作:

echo "hello
world"

这在脚本内部和命令行中都有效。

在命令行上,按Shift+Enter键在字符串内进行换行。

这适用于我的macOS和Ubuntu 18.04(仿生海狸)系统。

使用jq:

$ jq -nr '"Hello,\nWorld"'
Hello,
World

改用printf:

printf "hello\nworld\n"

printf在不同环境中的表现比echo更一致。

确保你在巴什。

$ echo $0
bash

这四种方式对我都有效:

echo -e "Hello\nworld"
echo -e 'Hello\nworld'
echo Hello$'\n'world
echo Hello ; echo world