デフォルトでは、man
はless
を使用してテキストを出力します。 stdoutに出力するように指示するにはどうすればよいですか?私の端末エミュレータにはスクロールバーと検索機能があり、矢印キーの代わりにそれらを使用したいと思います。
実際には、MANPAGER
またはPAGER
環境変数で指定されたものを使用します。
man
の実装とバージョンによっては、ポケットベルを指定するコマンドラインスイッチが存在する場合もあります。
man-db 実装では、以下のすべての方法で機能します。
MANPAGER=cat man man
PAGER=cat man man
MANOPT='-P cat' man man
man -P cat man
恒久的に設定するには、~/.bashrc
(またはシェルで使用されるその他の初期化ファイル)に追加するだけです。
export MANPAGER=cat
これは一部の古いman
実装でも機能しますが、MANOPT
はman-db固有です。
export MANOPT='-P cat'
(そのようにPAGER
を設定しないことをお勧めします。これは他の多くのアプリケーションでも使用されます。)
グローバル構成ファイルが存在する場合もあります。 man-dbには/etc/man_db.conf
または/etc/manpath.config
があります。そこで設定できます:
DEFINE pager cat
しかし、残念ながら、これはMANPAGER
もPAGER
も設定されていない場合にのみ考慮されます。
単純にman
の出力をcat
にパイプしますか?
man ls | cat # useful use of cat
別の角度:トニーの答えに似ています。
Manの出力をファイルにリダイレクトして、お気に入りのテキストエディターで表示したり、ブックマークやコメントなどを追加したりすることもできます。
man bash > bashman.txt
Bash manページのコピーと、bashフロー制御とbashテストフラグのセクションだけをbinディレクトリにテキストファイルとして保存しているので、参照しながらテキストエディター(kate)に直接読み込むことができますbashスクリプトの作成。
警告:システムとmanページによっては、上記のコマンドを実行すると、ファイル内にフォーマット情報と制御文字が含まれる場合があります。
これを回避するには、LESS='+/^TIPS' man man
:
To get a plain text version of a man page, without backspaces and
underscores, try
# man foo | col -b > foo.mantxt
これらのコマンドを試して、ポケットベルなしでman出力を生成します。
man ls | cat
(生成された固定幅)
man -P cat ls
(生成された変数の幅)
私はGNU linuxシステムにいました