ファイル全体を1つの画面に表示できる場合、stdoutへの印刷を減らす


13

ときはmore、その内容が1つの画面に表示できるファイルが渡され、それだけで改ページせずに標準出力にファイルの内容を書き込みます。ファイルが1つの画面に収まらない場合は、moreページ付けします。

less作業しているファイルを1つの画面に表示できる場合に終了するオプションがあり(-Fmore-Fフラグと同様に動作する-emulation機能がありますが、これらのオプションはどちらもlessファイルの内容を書き込まないようです内容が1つの画面に収まる場合は標準出力に。

どのように私は得ることができless、ファイルの内容場合は標準出力にファイルの内容を書くために1つの画面に収まると、それは通常、そうでない場合と同じようにファイルをページ分割することができますか?

less  more 

回答:


16

を使用しless -FXます。からman less

   -F or --quit-if-one-screen
          Causes less to automatically exit if the entire file can be dis-
          played on the first screen.

   -X or --no-init
          Disables sending the termcap initialization and deinitialization
          strings  to  the  terminal.   This is sometimes desirable if the
          deinitialization string does something unnecessary, like  clear-
          ing the screen.

なぜない-Fだけで動作-X
ジェシー

2
@Jesseそれは実際に-Xは、期待どおりではなく、正常に動作します。lessは端末の代替画面で動作するページャーなので、termcapの初期化を無効にしない場合、代替画面で起動および終了します。あなたはおそらく速いフラッシュを見るでしょう。
クリスダウン

echo lol | LESS=F less代替画面に印刷され、すぐに切り替わるため、何も表示されませんか?理にかなっています(簡単なフラッシュは表示されませんが)。ありがとう。
ジェシー

ああ!-Fが存在し、「使用」されている場合、代替画面を使用するときに、以下の開発者は一体何を考えたのでしょうか。この場合、代替画面を使用することはまったく意味がありません。
シーフマスター

なしで動作させるには、unix.stackexchange.com / q / 107315/85237を参照してください。less -F-X
ジョンメラー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.