我知道有諸如\! clear
, system clear
,ctrl + l
在終端機中使用的命令來清除終端。
但我清楚地意識到,它只是留下了一個間隙,所有以前的結果仍然在頂部,當我們滾動時,我們仍然會看到以前命令的結果。
我想知道是否有一個命令可以完全清理終端,它是新的,就像打開新終端一樣,當我向上滾動終端時,它只會顯示當前操作的結果。
答案1
使用“\!reset”命令。與清除或 Ctrl+L 相比,重置實際上會完全重新初始化終端,而不僅僅是清除螢幕。但是,它不會重新實例化 shell (bash)。這意味著 bash 的狀態與以前相同,就像您只是清除螢幕一樣。
答案2
您可以使用tput reset
。
此外reset
,tput reset
您也可以使用以下 shell 腳本。
#!/bin/sh
echo -e \\033c
這會將控製字元 Esc-C 傳送到重置終端的控制台。
Google Keywords: Linux Console Control Sequences
男人控制台代碼 說:
序列 ESC c 會導致終端重置,如果螢幕全是亂碼,這正是您想要的。常建議的「echo ^V^O」只會使 G0 成為目前的,但不能保證 G0 指向表 a)。在某些發行版中,有一個程式 Reset(1) 只執行「echo ^[c」。如果控制台的 terminfo 條目正確(並且有一個條目 rs1=\Ec),那麼「tput Reset」也會起作用。
參考:https://unix.stackexchange.com/questions/26975/how-to-clear-terminal-completely