行番号を「より少ない」で表示する方法(GNU)


660

左の列の表示行数を少なくするコマンドは何ですか?


80
lessLinuxコマンドラインユーティリティであり、プログラマーがテキストファイルを表示するために非常に一般的に使用されています。この質問は、使用に関連するすべての質問gitがトピックと同じように、「プログラマーが使用するツール」のドメインの下で、Stack Overflowのトピックにしっかりとトピックされています。また、「ショーの行番号が少ない」を検索したときの、Googleでの最初のヒットでもあります。この質問は閉じるべきではありません。
John Dibling 2013年

5
@JohnDiblingこの質問は、Unix&Linux Stack Exchangeに適しています。lessプログラマーが使用しているからといって、話題にはなりません。鉛筆も「プログラマが使用するツール」ですが、鉛筆を削る方法についての質問はここでは適切ではありません。
オーグラ

17
@augurar私はあなたが考えてくださいツールがここに意味することを知っているソフトウェアツールを。あなたは意図的に文脈の外でツールの意味を解釈しています。ちなみに、この質問はUnixとLinuxのスタック交換にも適していると思いますが、この質問がSOに表示されるのを妨げるものではありません:)
Gab是好人

回答:


979

マニュアルから:

-Nまたは--LINE-NUMBERSディスプレイの各行の先頭に行番号を表示します。

次のように入力して、終了せずに行番号を切り替えることもできます-N

この方法でlessのコマンドラインオプションを切り替えることができます。


6
大きなファイルよりも下の方に「G」を入力すると、行番号が表示されていなくても、「行番号を計算しています...(中断して中断)」と表示されます。-Nを使用して終了して再起動せずに現在の行を確認する方法を教えてください。私はペナルティに苦しんでいます。報酬はどこにありますか?
ブルーノブロノスキー2009

93
うわー、私はこれに対する答えを見つけることを期待して、ヘルプを数十回見てきました。私は常に「-<フラグ>コマンドラインオプションを切り替える[下のオプションを参照]」を見過ごしてきました。...つまり、less内から「-N」と入力できます。私はこれに約10年間悩まされてきました。良い時間!
ブルーノブロノスキー2009

2
行番号を別の色で表示することはできますか?
2013

3
こんにちは@gregあなたsedは行番号とオプションを色付けするために使用して、色を表示-Rさせる ことができますlesscat -n file.txt | sed 's/^[ 0-9]*[0-9]/\o033[34m&\o033[0m/' | less -RカスタマイズすることもできLESSOPENます...乾杯;)
olibre

1
切り替えたい場合は、Enter / Returnキーを押します。lessを使用しているときに-nまたは-Nを入力した後、変更を有効にするために、後でそれを押す必要がある場合もあります。下にもそのように書いてありますが、私はそれが瞬間的であると思い、-Nを入力し続けたので、なぜ数字が表示されないのか疑問に思っていたので、私の脳はドットを接続しませんでした。
アベリト

146

が開いている=ときにを押しlessて、現在の画面に関する情報(行番号を含む)を次の形式で表示することもできます。

myfile.txt lines 20530-20585/1816468 byte 1098945/116097872 1%  (press RETURN)

したがって、ここでは、たとえば、画面には現在行が表示されて20530-20585おり、ファイルには合計1816468行が含まれています。


44

cat -nにパイプする前にファイルをフィルタリングできますless

cat -n file.txt | less

または、ご使用ののバージョンがlessそれをサポートしている場合、-Nオプション:

less -N file.txt

4
あなたはそれをサポートしていないことを知っているあなたの少ないバージョンはどれですか?
アーロンホール

私は通常、cat -nではなくnlを使用します
ychaouche

32

環境変数を設定して、常にこれらのオプションをすべての対象外のファイルに適用することができます。

export LESS='-RS#3NM~g'

2
ラインalias less="LESS='-RS#3NM~g' less"では、.bashrc私の一日でした!ありがとう!
ジュリー、

4
この呪文の説明は大歓迎です:)
minexew '28

3
オプションは次のとおりです。R =ファイル内の生のカラーコードの処理が向上します。S =ワードラップの代わりに長い行を画面からスクロールします。#3 =一度に3ポジションずつ右/左にスクロールします。N =行番号を表示します。M =より長いプロンプト。〜=ファイルが〜で終わった後に空のスペースを表示する代わりに、空のスペースには何も表示しません。g =「g」で検索を行う場合、すべての一致ではなく、現在の一致のみを強調表示します。
ブライアン

17

コマンド行は、フラグを立てる-N--LINE-NUMBERS、画面の各行の先頭に行番号を表示させます。

less入力して、終了せずに行番号を切り替えることもできます-N<return>lessこのようにして、のコマンドラインオプションを切り替えることができます。


1
-Nまたは--LINE-NUMBERSを渡すと、CentOS 5.3の日付のみが表示されます。ただし、lessを開始した後に-Nを使用すると正常に機能します。
Mike Miller

15

ヒット=して行番号が表示されることを期待しているのに、バイト数しか表示されない場合、行番号はオフになっています。を押し-nてオンにし、$LESS「n」が含まれていないことを確認します。

デフォルトで行番号をオフにする(たとえば、を設定するLESS=n)と、非常に大きなファイルでの検索が高速化されます。大きなファイルを頻繁に検索する場合に便利ですが、通常はどの行にいるかは気にしません。

私は通常LESS=RSXin(エスケープコードを有効にし、長い行を切り刻み、終了時に画面をクリアせず、すべての小文字の検索で大文字と小文字を区別せず、デフォルトで行番号をカウントしません)で実行し、必要に応じて、-nまたは-S内部からのみ使用lessします。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.