如何在Linux shell脚本中插入新行?

27 浏览
0 Comments

如何在Linux shell脚本中插入新行?

这个问题已经在这里有了答案

在Bash中打印换行符会输出\\ n文字

我想在多个echo语句之间插入一个新行。我尝试过echo\"hello\\n\",但它不起作用。它打印出\\n。我希望得到以下期望输出:

Create the snapshots
Snapshot created

admin 更改状态以发布 2023年5月22日
0
0 Comments

使用这个echo语句

 echo -e "Hai\nHello\nTesting\n"

输出是

Hai
Hello
Testing

0
0 Comments

echo语句之间插入新行最简单的方法是插入一个没有参数的echo,例如:

echo Create the snapshots
echo
echo Snapshot created

也就是说,echo没有任何参数将打印出一个空行。

另一个替代方案是使用带有-e标志和嵌入的换行字符\n的单个echo语句:

echo -e "Create the snapshots\n\nSnapshot created"

然而,这种方法在所有系统中-e标志的行为并不一致,所以这并不是通用的。如果你真的想这样做一个更好的方法是使用printf:

printf "Create the snapshots\n\nSnapshot created\n"

这在许多系统中工作更可靠,尽管它不符合POSIX标准。注意,你必须在结尾手动添加一个\n,因为printf不会像echo一样自动追加一个新行。

0