Shell 脚本命令输出流覆盖旧行

Shell 脚本命令输出流覆盖旧行

我有一个调用命令 ( sudo apt-get update) 的 shell 脚本。当前状态显示在终端中,但较旧的线路明显向上移动。我想要实现的是显示最近的 X 行,并在出现新行时删除旧行。这意味着输出应该始终只占用 X 行。

我尝试了 tail 和 sed 但无法达到想要的结果。

答案1

如果您像我一样在 中运行终端会话tmux,那么您可以要求tmux拆分窗口并在新窗格中运行另一个命令:

$ tmux split-window "sudo apt-get update"

命令完成后,新创建的窗格将立即关闭,因此您可能需要read随后添加一个(它将停止,直到您按Enter):

$ tmux split-window "sudo apt-get update; read"

split-window您可以在手册中阅读有关该命令的更多信息tmux,但我只会提到如果您添加-lN,例如tmux split-window -l 5 ...,然后你会得到一个新窗格行(本例中为五行)。

相关内容