📅  最后修改于: 2023-12-03 15:34:58.085000             🧑  作者: Mango
在 Shell 中,默认情况下在输出内容的时候会删掉末尾的换行符,但是有些时候我们可能希望保留换行符。下面介绍两种方法。
我们可以通过 echo
命令的 -n
参数来避免输出末尾的换行符。但是这样会导致输出内容没有换行符。
echo -n "Hello, World!"
输出:
Hello, World!$
为了保留换行符,我们可以使用 -e
参数来开启转义序列,然后在字符串末尾添加一个换行符(\n
)。
echo -ne "Hello, World!\n"
输出:
Hello, World!
$
另一种方法是使用 printf
命令。和 echo
不同,printf
不会自动添加换行符,因此可以通过控制输出格式来保留换行符。
以下是示例代码:
printf "Hello, World!\n"
输出:
Hello, World!
$
值得注意的是,如果要输出类似于换行符这样的特殊字符,我们需要在前面加上转义符 \
。例如,要输出一个制表符,可以使用 \t
。
以上两种方法都可以用来在 Shell 脚本中保留换行符。选择哪种方法取决于需求,通常情况下,使用 printf
命令更加灵活。