Linux
我們如何撤消 Linux 中的 clear 命令?
clear
清除終端螢幕。是否有任何命令可以從
clear
執行之前恢復原始螢幕內容,有效地撤消它clear
?
clear
與清除終端螢幕的命令沒有直接相反的意義。但是,命令行終端仿真器的一些實現提供了回滾緩衝區。該緩衝區可以保留先前的輸出行。例如,使用
mintty
Cygwin 中的這些命令生成文本然後清除螢幕,我發現我能夠滾動回之前的結果。但是,這純粹是作為終端仿真器的一部分實現的,不太可能以程式方式訪問:yes | head -n20 | nl # Generate 20 lines of unique output yes n | head -n20 | nl # And some more
clear
回滾後
如果使用
tmux
終端仿真器/多路復用器,您可以將 undoable 定義clear
為:clear() { tmux capture-pane -eb c && tput sc && command clear "$@" }
並且
unclear
作為:unclear() { tput home && tmux show-buffer -b c && tput rc }
Where
clear
將螢幕內容擷取到c
緩衝區中,並s
在c
清除之前保存游標位置,並unclear
在將游標移動到起始位置(左上角)後轉儲該緩衝區的內容,然後r
儲存c
游標位置。