GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでMoreコマンドを使用して大きなテキストファイルを読み取る方法

Linuxターミナルでテキストファイルを表示するにはさまざまな方法があります。

Linuxを初めて使用する場合は、常にcatコマンドを使用してファイルの内容を読み取ろうとします。これは、出力が数行しかないファイルには最適ですが、ファイルが大きいと、コンテンツがユーザーの前をすばやくスクロールするため、必要なものを見つけるのが困難になるか、不可能になります。

catコマンドは、大きなファイルを表示するには確かにあまり実用的ではありません。画面全体がファイルの内容でいっぱいになることは望ましくありません。

ここでできることは、「lesscommand」または「morecommand」のいずれかを使用することです。 Linuxハンドブックのlessコマンドについてはすでに説明したので、このチュートリアルでmoreコマンドを使用する方法を紹介します。

Linuxターミナルでテキストファイルを読み取るためにmoreコマンドを使用する

moreコマンドは、ページビューでテキストファイルを開きます。ページごとに読むことができ、さらに終了すると、画面に出力が表示されなくなります。ターミナルは清潔で手付かずの状態になります。

詳細をナビゲートする

さらに多くのデータを使用すると、一度に1ページずつデータを簡単にスクロールできます。ナビゲーションには次の方法を使用できます。

入力 アクション
下矢印/スペースバー 下にスクロール(1ページ)
上矢印/B 上にスクロール(1ページ)
入力 一度に1行スクロール
–番号 1画面あたりの行数
+番号 行番号から始まるファイルの表示
+/文字列 検索文字列の一致から始まるファイルの表示
q テキストファイルの表示を終了して画面に戻ります

さらに使用している間は、qを入力していつでも終了したり、hを入力して組み込みのヘルプを表示したりできます。

画面あたりn行を表示

コマンドの後に-n(nは整数)を入力すると、ページとしてn行のみが表示されます。

more -n filename
最初のn行をスキップします

+ nと入力します (nは整数)コマンドの後、コンテンツを表示する前にその行番号にスキップします。

more +n filename

moreコマンドを使用して文字列を検索

+ / string を使用して、指定した文字列の最初のインスタンスにスキップできます 私たちの命令の後。

more +/string filename

次のインスタンスを見つけるには、 / stringと入力します 検索するその他のビュー内。

より多くのコマンドの-sオプションを使用して複数の空白行をスキップします

複数の空白行が一緒にある場合は、オプション-sを使用してそれらを単一の空白行にトリミングできます。

more -s filename
ヘルプオプションが表示された状態でさらにコマンドを実行する

moreを初めて使用する場合は、オプション-dを使用して実行できます。このようにして、ナビゲートのヘルプを表示し続けます。

それに加えて、より多くのビューで不正な文字やコマンドを使用した場合は、ナビゲーションまたは終了の詳細な手順を表示するhを使用したヘルプメソッドを使用することをお勧めします。

結論

あなたが見ることができるいくつかのトリックとヒントが含まれています。もちろん、詳細については、より多くのコマンドのマニュアルページをいつでも見ることができます。

more --help
-d          display help instead of ringing bell
-f          count logical rather than screen lines
-l          suppress pause after form feed
-c          do not scroll, display text and clean line ends
-p          do not scroll, clean screen and display text
-s          squeeze multiple blank lines into one
-u          suppress underlining

// from the detailed instructions page accessible via h while running
<space>                 Display next k lines of text [current screen size]
z                       Display next k lines of text [current screen size]*
<return>                Display next k lines of text [1]*
d or ctrl-D             Scroll k lines [current scroll size, initially 11]*
q or Q or <interrupt>   Exit from more
s                       Skip forward k lines of text [1]
f                       Skip forward k screenfuls of text [1]
b or ctrl-B             Skip backwards k screenfuls of text [1]
'                       Go to place where previous search started
=                       Display current line number
/<regular expression>   Search for kth occurrence of regular expression [1]
n                       Search for kth occurrence of last r.e [1]
!<cmd> or :!<cmd>       Execute <cmd> in a subshell
v                       Start up /usr/bin/vi at current line
ctrl-L                  Redraw screen
:n                      Go to kth next file [1]
:p                      Go to kth previous file [1]
:f                      Display current file name and line number
.                       Repeat previous command

個人的には、より多くのコマンドよりも少ないコマンドを使用する方が好きです。

このチュートリアルが、より多くのコマンドを生き残るのに十分なものになることを願っています。ご質問やご提案をお待ちしております。


Linux
  1. LinuxでRsyncコマンドを使用するにはどうすればよいですか?

  2. Linux screen コマンドの使用方法

  3. Linux の find コマンドを使用してファイルを検索する方法

  1. Linuxでファイルの名前を変更する方法

  2. Grepコマンドを使用してファイル内のテキストを検索する方法

  3. Linuxコマンド:テキストファイルのみを「検索」する方法は?

  1. Linuxコマンドラインでテキストファイルを表示するためにmoreを使用する

  2. LinuxでSuコマンドを使用する方法

  3. Linux で rpm2cpio コマンドを使用する方法