プログラムを終了すると、「man」はどのように画面を復元しますか?

プログラムを終了すると、「man」はどのように画面を復元しますか?

catまたは、同じプログラムのマニュアルページを開くと、lsマニュアルページの内容が印刷され(おそらく適切な単語ではないかもしれません)、それを押すとqコマンドを呼び出す前のような画面が表示されますman。回復はどのように行われますか?すべてを消去し、以前にシェルにあった内容を印刷するには?

例:

[VAR121@Tesla Testing]$  man ls

出力:

LS(1)                                                        User Commands                                                        LS(1)

NAME
       ls - list directory contents

SYNOPSIS
       ls [OPTION]... [FILE]...

 ............

を押すと、q画面がシェルの基本的な外観(下のプロンプト)に戻ります。

[VAR121@Tesla Testing]$  man ls
[VAR121@Tesla Testing]$

写真を復元する方法は?

ベストアンサー1

消去と回復画面は、実際に使用している端末エミュレータ(、、、、xterm)の機能です。gnome-terminalkonsolescreen

デフォルトで使用されるポケットmanベルはですless

~からman 1 man

   -P  pager
          Specify  which pager to use.  This option overrides the 
          MANPAGER environment variable, which in turn overrides 
          the PAGER variable.  By default, man  uses /usr/bin/less -is.

呼び出されると、less端末エミュレータはマニュアルページの内容を表示する代替画面を起動します。終了すると、lessaltscreenが破壊され、端末はバッファに保存されている内容を表示します。

答えがあるここlessこれについては、プログラムが代替画面を開始するのを防ぎ、終了時に画面を消去する方法についてさらに説明します。つまり、less呼び出し時に代替画面が実行されないように環境変数を定義できます。 Bashを使用している場合は、~/.bashrcに次のように入力します。

export MANPAGER="/usr/bin/less -r -X -is"

おすすめ記事