gpt4 book ai didi

string - 如何在 shell 中使用 echo 或 printf 覆盖多行?

转载 作者:行者123 更新时间:2023-12-02 06:22:20 25 4
gpt4 key购买 nike

我有一些 shell 函数,一个可以在屏幕上多行绘制一些 ASCII 艺术,例如:

printf %s '
______________
||__________||

'
sleep 1
clear
printf %s '
______________
||__________||
||
||
||

'
sleep 1
clear
printf %s '
______________
||__________||
||
||
||
||‾‾‾‾‾‾‾‾‾‾||
‾‾‾‾‾‾‾‾‾‾‾‾‾‾
'

有没有办法在不清除屏幕的情况下覆盖字符串?我尝试在每一行和最后一行上使用\r,但这似乎只能替换一行字符串。

最佳答案

这完全取决于您的终端。许多终端允许发送转义序列将光标移动到起始位置。这可以作为 terminfo(1) 命令使用

tput home
printf 'Cursor now home\n'

如果有的话,请参阅man terminfo。如果没有,您需要告诉我们您的 TERM 环境变量的值 (echo $TERM)。

关于string - 如何在 shell 中使用 echo 或 printf 覆盖多行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28464503/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com