首页 > 解决方案 > 换行符不被打印

问题描述

我正在编写一个 bash 脚本,它首先保存一个文本(换行符来自grep),然后再打印它。由于某种原因,该行echo $TEXT只打印一行。我看了一下这个答案,我相信我使用的是相同的东西(但使用 $() 而不是反引号),但它不起作用。有任何想法吗?

TEXT=$(grep Vacation vacations | grep Day)
echo "Counting days based on the following:"
echo "###############################################################"
echo $TEXT
echo "###############################################################"

标签: bash

解决方案


您必须引用$TEXT,否则换行符将被视为任何其他空格,并且在确定echo.

echo "$TEXT"

grep但是,一旦您已经打印了标题,则简单地运行会更有效。

echo "Counting ..."
echo "####..."
grep Vacation vacations | grep Day
echo "####..."

推荐阅读