初心者目線のLPIC講座 〜わかりやすいかも、このサイト〜

初心者目線のLPIC講座 > テキスト処理コマンド > ファイルの一部を表示

テキスト処理コマンド

ファイルの一部を表示

ファイルの先頭や末尾だけを表示するコマンドや、行数や文字数をカウントするコマンドを紹介します。

ここで扱う主なコマンドは「head」「tail」「wc」です。特に「head」と「tail」の複合した使い方はややこしいので(苦笑)、よく覚えましょう。

まずは「head」コマンドから。

「head」コマンド

意味:ファイルの先頭(通常は10行)を表示する。

書式:head [オプション] [ファイル名]

オプション(以下):

オプションは以下です。

-行数(または「-n 行数」)・・・取り出す行数を指定する

通常の使い方は、以下の通りです。「lpictxt」というテキストファイルの先頭10行を表示したい時は、以下のようにします。

$ head lpictxt

行数を指定することもできます。例えば、テキストファイル「lpic」から先頭6行分だけ表示したい場合、

$ head -6 lpictxt

と、

$ head -n 6 lpictxt

の2種類あります(どちらを使っても同じです)。

headの逆で、末尾を表示する「tail」というコマンドもあります

「tail」コマンド

意味:ファイルの末尾(通常は10行)を表示する

書式:tail [オプション] [ファイル名]

オプション(以下):

-行数・・・取り出す行数を指定する

+行数・・・指定した行から最終行までを取り出す

例を見ましょう。テキストファイル「lpictxt」の末尾6行を表示したい場合、

$ tail -6 lpictxt

と入力します。

また、テキストファイル「lipctxt」の15行目以降(15行目から末尾まで)を表示する場合は、

$ tail +15 lpictxt

と入力します。

headとtailを組み合わせる事で、もっと複雑な指定をすることもできます。テキストファイル「lipctxt」の5行目から10行目を表す指定を3つほど紹介します。

$ head lpictxt | tail -6

$ head lpictxt | tail +5

$ tail +5 lpictxt | head -6

上記3つは、LPICでも引っかかり易い問題の1つです。大抵は、上記のような例文が出て「正しいものを選択せよ」というような問題が出ますが、問題を解くコツは、「図に描いて印をつけること」です。

まず適当な数字を紙に書きます。

一つ目の「head lpictxt | tail -6」で例を示しますと、「head」コマンドで「先頭の10行」をさしているので、1〜10までわかるように印をつけます(ここではで示します)。

1  2  3  4  5  6  7  8  9  1011 12 13 14 15 16 17 18 19 20

次に、後ろの「tail」コマンドでは、「head」コマンドからパイプ「|」で送られた10行の内の「末尾6行」をさしているので、上記赤字部分の内、末尾6行に印を付けます(ここではで示します)。

1  2  3  4 5  6  7  8  9  1011 12 13 14 15 16 17 18 19 20

どうですか、で塗られた部分が、全体から見て「5行目から10行目」をさしているのがわかりますよね。

同じようにして他の例文もやってみてください。全て5〜10に印がつく事がわかると思います。

さて最後に、「wc」というコマンド。これはファイルの行数、単語数、文字数を表示します。

「wc」コマンド

意味:ファイルの行数、単語数、文字数を表示する

書式:wc [オプション] [ファイル名]

オプション(以下):

-l・・・行数を表示する

仮に、テキスト「lpictxt」の中身が、

$ cat lpictxt

abc def ghi

123456

aiueo

となっているとしましょう。そこで通常の書式通りに「wc」コマンドを実行すると、

$ wc lpictxt

3 5 20 lpictxt

左から、3は行数、5は単語数、20は行数です。

行数のみを表示するときは、オプション「-l」を付けて

$ wc -l lpictxt

と入力します。


スポンサードリンク