我希望任何标准输出仅显示在一行上。每一行都应该覆盖最后一行。
通常,我会这样做
echo -ne "Overwrite me. \033[0K\r"
但是现在我想管道输出,因为echo不是过滤器,我需要使用sed或类似的东西。
cat story.txt | some.sed.like.util.for.replacing.$.with.\033[0K\r
答案 0 :(得分:1)
sed
,因为sed
将始终在其输出中附加换行符。您需要在shell中使用while
循环:
while read -r line ; do
echo -en "\r\033[0K${line}"
sleep 1
done < story.txt