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

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

当前回答

简单地键入

echo

获得一条新线路

其他回答

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

如果前面的答案不起作用,并且需要从函数中获取返回值:

function foo()
{
    local v="Dimi";
    local s="";
    .....
    s+="Some message here $v $1\n"
    .....
    echo $s
}

r=$(foo "my message");
echo -e $r;

只有这个技巧在我使用Bash版本开发的Linux系统上有效:

GNU bash, version 2.2.25(1)-release (x86_64-redhat-linux-gnu)

您还可以执行以下操作:

echo "hello
world"

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

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

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

要打印带有回音的新行,请使用:

echo

or

echo -e '\n'

改用printf:

printf "hello\nworld\n"

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