UnixでLessを使用して特定の行番号に移動する


354

約100万行のファイルがあります。データを確認するには、行番号320123に移動する必要があります。それ、どうやったら出来るの?


1
それを使ってmoreどうですか?:-)
matanster

回答:


491

n行数です:

  • ng:行番号nにジャンプします。デフォルトはファイルの先頭です。
  • nG:行番号nにジャンプします。デフォルトはファイルの終わりです。

したがって、行番号320123に移動するには、と入力し320123gます。

Wikipediaから直接コピーして貼り付けました。


3
...そしてEnter gキーを押した後、Enter キーを押さないでください。さもないと、さらに1行ジャンプします。
HongboZhu

211

コマンドラインから直接特定の行を開くには、次のコマンドを使用します。

less +320123 filename

行番号も確認したい場合:

less +320123 -N filename

また、数行のコンテキストが必要な場合に備えて、ファイルの特定の行を端末の特定の行に表示するように選択することもできます。たとえば、これはターミナルの10行目の320123行でファイルを開きます。

less +320123 -j 10 filename

60

sedこれにも使用できます-

sed -n '320123'p filename 

これにより、行番号320123が出力されます。

範囲が必要な場合は、次のことができます-

sed -n '320123,320150'p filename 

特定の行から最後までしたい場合は-

sed -n '320123,$'p filename 

38

lessの中から(Linuxの場合):

 g and the line number to go forward

 G and the line number to go backwards

単独で使用すると、gとGはそれぞれファイルの最初と最後の行に移動します。番号と一緒に使用すると、どちらも同等です。

例; ファイルの320123行に移動します。

「g」を押して、コロンの後に320123の数字を入力します

さらに、less内に「-N」を入力して、行番号をアクティブ化/非アクティブ化できます。実際には、プログラムの内部から-jや-Nなどのコマンドラインスイッチを渡すことができます。

注:コマンドラインで行番号を指定すると、プログラム内から実行するよりもはるかに高速で、少ない数(少ない+ number -N)で開始できます。

less +12345 -N /var/log/hugelogfile

これにより、行番号を表示し、12345行目から始まるファイルが開きます。

出典:man 1 less and built-in help in less(less 418)


2
(芋良い答えを)「以下の行に行く」:興味深いことに、グーグルたときにその表示された答えのためにあなたの答えの部分を取ることにしたグーグル
マティアス・

4

これを編集するために可能であるnano経由して+n、コマンドラインから、例えば、

nano +16 file.txt

file.txt行16に開きます。

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