端末でファイルの最初のページを表示するにはどうすればよいですか?

端末でファイルの最初のページを表示するにはどうすればよいですか?

端末ウィンドウに収まる可能性のある多くのファイル(head動的行数を含むファイルなど)を表示したいです。

複数行で囲む行がなく、プロンプトに1行が必要な場合に使用できますhead -n $(($(tput lines)-1))

上記の仮定を必要としない解決策はありますか?

編集:このソリューションは非対話型と見なされ、less私が知っている限り機能しません。

編集2:このソリューションは、テキストの色付けのためのANSIエスケープシーケンスなど、印刷されない文字も理想的に正しく処理する必要があります。

答え1

あなたはできます包まれたfoldhead次のようになります。

onepage () {
  fold -w "$(tput cols)" -s "$@" |
    head -n "$(($(tput lines)-1))"
}

あるいは、pr.assuming GNUを使用することもできますpr

pr -l "$((LINES - 1))" +1:1 -t
  • -l ...- ページの高さを$LINES-1に設定します。
  • +1:1最初のページから始めて、最初のページまで印刷します。
  • -t- ヘッダーを印刷しないでください。

答え2

おそらくこのプログラムを使用していると思います。less

端末で次のように入力します。

less nameOfTheTextFile

テキストファイルの最初の行から始めて、利用可能なすべての適切な行を表示します。

関連情報