もっとページャーを進むには、fを使用してください。

もっとページャーを進むには、fを使用してください。

moreこれはマニュアルページで提供され、fk個のテキスト画面を前にスキップするために使用されます(デフォルトは1)。を使って非常に長いファイルを保存し、ページ単位catmore画面に表示したりしましたが、f最初のページを押すと自分で前に移動せずに表示され、... skipping 29 linesファイルが閉じて再び前のページに戻ります。即時。これを使用してナビゲートしようとすると、期待spacebarどおりに機能します。ファイルの長さが十分に長いため、毎回1ページをスキップして前に移動する必要があります。なぜそんなに違う行動をするのですか?

ここに画像の説明を入力してください。

ベストアンサー1

次の実験を試してください。

  • 25ラインターミナルを開きます。
  • ランニングseq 1 1 100 > test_text
  • ランニングmore test_text
  • 画面の最後の行の前の行を表示します。言うことができます24
  • f「次へ」をタップします。飛び越えるページ。
  • 画面の最初の行を見てください。言うことができます49

fテキストページをスキップします。したがって、ファイルの最初の「ページ」が表示され、キーを押すと3f番目のページが表示されます。

もう一度押すと、ファイルの最後の4行が表示fされます。 5番目のページを表示するのに十分な行がないため終了します。... skipping 24 linesmore

もう一度お試しくださいspacespaceページをスキップしないでください。すべてのページが表示されます。

編集する

この回答はmore version 5.19 (Berkeley 6/29/88), which is currently in use in the Linux community(参照もっと男)。 @Kusalanandaが報告したように、「実験」の結果はバージョン/ユニスによって異なる場合があります。

lineaとaの違いrow of text on a terminal

多くの場合、これら2つの定義は互いに置き換えることができます。この場合、区別することが重要です。

  • 行は、改行文字(文字)で終わるテキストファイルの一連の文字です\nwc -lコマンドはファイルの行数を計算します。線の長さは0から無限大までの数字です。
  • 端末のテキスト行は、端末に表示される一連の文字です。端子幅の長さは固定されています。

私の最初の「実験」はとても簡単で、すべての行が行よりも(確かに)短かった。

ファイル内の行は行よりはるかに長い場合があります。これを表示するには、more各行を複数の行に並べ替えます。

新しい実験を試してみましょう。

  • example次の内容でファイルを作成します。

    006 XX\n010 XXYYYY\n015 XXYYYYZZZZZ\n
    

    3行のファイルです。各行の長さは6、10、15文字です。数字の後にスペースを数えることを忘れないでください。

  • ランニングwc -l example。 3がその結果です。

  • 8列ターミナルでは、次の内容を見ることができます。

    006 XX  
    010 XXYY
    YY      
    015 XXYY
    YYZZZZZ 
    

    最初の行の長さは8文字です。006+ スペース 1 個 + XX+ スペース 2 個です。

    2行目は8文字の長さです。010+スペース1つ+ XXYY

    3行目は8文字(YY+ 8スペース)です。

    その他など

3行のテキストが5行のテキストに変わりました。

マニュアルページには次のようmoreに記載されています。

 f         Skip forward k screenfuls of text.  Defaults to 1.

これはmore、端末のすべての行を埋めるために多くのテキスト行をスキップすることを意味します。

おすすめ記事