clear
端末画面を消去します。
clear
実行する前に元の画面の内容を復元して操作を効果的にキャンセルするコマンドはありますかclear
?
答え1
clear
端末画面を消去する直接的な反対のコマンドはありません。
ただし、コマンドライン端末エミュレータのいくつかの実装ではスクロールバックバッファを提供します。このバッファは前の出力ラインを保持できます。たとえば、mintty
Cygwinでこれらのコマンドを使用してテキストを生成し、画面を消去すると、前の結果に再スクロールできることがわかりました。ただし、これは純粋に端末エミュレータの一部として実装されており、プログラムでアクセスする可能性はありません。
yes | head -n20 | nl # Generate 20 lines of unique output
yes n | head -n20 | nl # And some more
clear
後ろにスクロールした後
答え2
tmux
ターミナルエミュレータ/マルチプレクサを使用している場合は、UNDOを次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
答え3
元に戻すという意味では何もありません。これに加えて、コマンド履歴を表示してコマンドを再実行できます。コマンドが等しい場合は、同じ結果が得られます。
脚注:★何らかのロギングシステムを使用しない限り、何もありません。このロギングは、ターミナルプログラムの一部でもスタンドアロンでもかまいません。これはLinuxカーネルの一部ではありません。