我想在多个 echo 语句之间插入一个新行。我试过 echo "hello\n",但是没有用。它正在打印 \n。我想要的结果是这样的:
echo "hello\n"
\n
Create the snapshots Snapshot created
使用这个 echo 语句
echo -e "Hai\nHello\nTesting\n"
输出是
Hai Hello Testing
你可以使用 Printf (1) 指挥官,例如
printf "Hello times %d\nHere\n" $[2+3]
printf命令可能接受参数,并且需要与标准 C Printf (3)函数类似(但不完全相同)的格式控制字符串..。
printf
在 echo语句之间插入新行的最简单方法是插入没有参数的 echo,例如:
echo
echo Create the snapshots echo echo Snapshot created
也就是说,没有任何参数的 echo将打印一个空行。
使用带有 -e标志和嵌入换行符 \n的单个 echo语句的另一种选择:
-e
echo -e "Create the snapshots\n\nSnapshot created"
然而,这是不可移植的,因为 -e标志并不能在所有系统中一致地工作。如果你真的想这样做,一个更好的方法是使用 printf:
printf "Create the snapshots\n\nSnapshot created\n"
这在许多系统中工作得更可靠,尽管它不兼容 POSIX。请注意,必须在末尾手动添加 \n,因为 printf不像 echo那样自动添加换行符。
echo $'Create the snapshots\nSnapshot created\n'